私は 3 つすべてが関連していることを知っています。J で書かれたProject Eulerの問題に対するかなりの数の回答と、K で書かれたいくつかの回答を見てきました。それを学ぶための材料を手に入れることについて?
6 に答える
APL
元の配列プログラミング言語として Kenneth Iverson によって作成されました。予約語がないため、ASCII 以外の文字セットを使用します。英国 APL 協会は、通訳者 (無料および商用の両方) の最新リストと、以下で説明する APL に影響を受けた言語に関する情報を保持しています。
A+
APL のフォローアップとして Arthur Whitney によって作成されました。ソース コードは GPL の下で入手でき、含まれている XEmacs 拡張機能があります。Web サイトからダウンロードします。
J
Kenneth Iverson と Roger Hui によって作成された、これは ASCII 文字のみを必要とします。ソースは以前はお金がかかりましたが、最近 GPL でリリースされました。Web サイトからダウンロードします。
K
別の Arthur Whitney 言語で、これも ASCII 文字を使用します。その後、その背後にある会社は言語を廃止しましたが、オープンソースのKonaがあります。
Q
K の上に構築され、SQL に似たクエリ/結合機能 (テーブルは組み込みのコンテナーです) を含むこの言語は、大量のデータを処理するために構築されています。非商用ライセンス版はWeb サイトからダウンロードできます。
積極的に使用されているものに関しては、Q は金融でかなり人気がありますが、J は学界や愛好家からある程度支持されています。これらの 2 つは、最近の配列プログラミングの最善策です。
セクションの下のAPLよくある質問を見てください:マシンXのAPLはどこにありますか?
http://aplwiki.com/Frontpageに情報があるwikiもあります
個々の言語の性質と資料の入手可能性を考慮して、私は J.
現在の J インタープリターはオープン ソースではありませんが、言語仕様はオープン ソースです。したがって、公式の J インタープリターが無料でなくなった場合、オープンソース プロジェクトがそれを実装することができます。
K は死んでいるようで、Q に取って代わられました。その上のすべてのライセンスは独占的であるように見え、インタプリタを見つけるのは難しいようです (Q ではなく kdb を販売しようとしているため)。
使用する APL のバージョンが見つかりません。
いつでも A+ を試すことができます。http://www.aplusdev.org/から無料
この APL 言語は J および Q に進化しました
J はオープンソースになりました: http://www.jsoftware.com/source.htm
NAS2000 と呼ばれる無料の APL インタープリターがありますが、これは概念実証にのみ役立つことがわかりました。ときどき間違った結果が得られることがあります (私は何年も前に 8K IBM 1130 から PC/XT までのすべてで APL でプログラムしましたが、結果が間違っていると思うこともあります) 一方で、ひどく遅いこともあります。J での最良のケースは、何よりも速く実行されます。私は K を使ったことがなく、J で約 100 のオイラー問題を試みましたが、ランクを本当に理解し始めたところです。(そのうちの約 10 を D で実行し、1 つは J で計算をサポートする Lisp で実行し、もう 1 つは整数線形計画法パッケージで実行しました。適切にコード化された制約であると考えられています。
J は本質的に数学言語であり、ほとんどのオイラー問題に適しています。そのため、必要に応じて jsoftware.com サイトを検索して、じっくり考えて問題を解くことが最善の方法です。