2009-09-29 14 views
7

Ich weiß, dass alle 3 sind verwandt, und ich habe eine ganze Reihe von Antworten auf Probleme in Project Euler in J geschrieben, und ein paar geschrieben K. Was ich frage mich ist, was würden Sie vorschlagen Lernen, und wo würdest du vorschlagen, die Materialien zu bekommen, um es zu lernen?Lernen J/K/APL

+1

@Mark: Compiled C sah in einem Hex-Viewer macht auch nicht viel Sinn, aber es gibt eine Logik zu diesem Chaos genau das gleiche. – MPelletier

Antwort

2

die Natur der einzelnen Sprachen gegeben, und die Verfügbarkeit von Material, werde ich mit J. gehen

Der Strom J-Interpreter ist nicht Open Source, aber die Sprache spec ist. Sollte also der offizielle J-Interpreter nicht mehr frei sein, könnte ein Open-Source-Projekt das umsetzen.

K scheint tot zu sein und wird durch Q ersetzt. Alle Lizenzen scheinen urheberrechtlich geschützt zu sein, und der Interpreter scheint schwerer zu finden (da sie versuchen, kdb, nicht Q zu verkaufen).

Ich kann keine Version von APL finden, um zu verwenden.

+1

Für APL: versuchen NARS2000 –

+0

Ich finde, J ist derzeit das brauchbarste Ding, und ich bedauere das Fehlen von eine moderne Open-Source-Lösung, zumal J Software nicht daran interessiert ist, eine meiner bevorzugten Plattformen zu unterstützen, aber es scheint, dass sich die Situation ändern könnte, da das Interesse an diesen Sprachen anscheinend wieder zunimmt. –

8

APL

von Kenneth Iverson wie die Original-Array-Programmiersprache Erstellt entwickelt. Verwendet einen Nicht-ASCII-Zeichensatz, da keine reservierten Wörter vorhanden sind. Die British APL Association enthält eine aktuelle Liste von Dolmetschern (sowohl frei als auch kommerziell) sowie Informationen über die APL-inspirierten Sprachen.

A +

Erstellt von Arthur Whitney als Follow-up zu APL. Der Quellcode ist unter GPL verfügbar und es gibt eine mitgelieferte XEmacs-Erweiterung. Download von der website.

J

Erstellt von Kenneth Iverson und Roger Hui, dies erfordert nur ASCII-Zeichen. Die Quelle, die verwendet wurde, um Geld zu kosten, wurde kürzlich unter GPL veröffentlicht. Download von der website.

K

Eine andere Arthur Whitney Sprache, diese verwendet auch ASCII-Zeichen. Die Firma dahinter hat die Sprache inzwischen außer Betrieb genommen, aber es gibt die Open-Source-Version Kona.

Q

Aufbauend auf der K zu SQL-ähnliche Abfrage/join Fähigkeiten (Tabellen sind ein Einbau-Container), diese Sprache ist gebaut für den Umgang mit vielen Daten umfassen. Eine nichtkommerzielle lizenzierte Version kann von der website heruntergeladen werden.

Was aktiv genutzt wird, ist Q in der Finanzbranche recht populär, während J von Akademikern und Hobbyisten unterstützt wird. Diese beiden sind heutzutage die beste Wahl für Array-Programmierung.

0

Es gibt ein kostenloses APL-Interpreter genannt NAS2000, aber ich finde, dass es für Proof of Concept nur dann sinnvoll ist. Manchmal bekomme ich falsche Ergebnisse (ich programmierte in APL vor Jahren von einem 8K IBM 1130 bis zu einem PC/XT und manchmal denke ich, dass die Ergebnisse falsch sind), während sie manchmal einfach schrecklich langsam sind. Am besten in J läuft es so schnell wie alles. Ich habe K nie benutzt, ich habe versucht, in J etwa 100 Euler-Probleme zu machen, und ich beginne gerade erst, meinen Rang zu verstehen. (Etwa 10 davon habe ich in D gemacht, eins in Lisp mit unterstützenden Berechnungen in J, und eins in einem ganzzahligen linearen Programmpaket, das ich dann für D aufgegeben habe, als ich herausfand, dass es mir trotz allem nicht die richtige Antwort geben würde geglaubt, korrekt kodierte Constraints zu sein

J ist in seinem Herzen eine mathematische Sprache, und es ist gut für die meisten Euler-Probleme geeignet, also hockte einfach und mache sie, suche die jSoftware.com-Seite, wenn du