失われたLisp開発スキルを回復するために使用できるSchemeまたはLISPのバージョンを探しています。一部のWeb機能は便利ですが、必須ではありません。
私はPltとMITのスキームを見てきましたが、どちらもかなり見栄えがしますが、Pltの方が機能が豊富なようです。Lispの実装も見てきましたが、どれもかなり高価なようです。
私は無料/安価な実装を好みます。これはたまに趣味のプログラミングになる可能性が高いからです。どのような推奨事項がありますか?
失われたLisp開発スキルを回復するために使用できるSchemeまたはLISPのバージョンを探しています。一部のWeb機能は便利ですが、必須ではありません。
私はPltとMITのスキームを見てきましたが、どちらもかなり見栄えがしますが、Pltの方が機能が豊富なようです。Lispの実装も見てきましたが、どれもかなり高価なようです。
私は無料/安価な実装を好みます。これはたまに趣味のプログラミングになる可能性が高いからです。どのような推奨事項がありますか?
回答:
私はこれでかなりの実験をしました。
Clozure Common Lisp(旧姓Open MCL)は群を抜いて最速です。Intel Mac Miniの次の競合製品よりも25〜30パーセント高速です。
MITスキームはMacで非常にうまく機能します。最終的には自分でコンパイルしたと思いますが、そのサイトにはバイナリがあります。PLTスキームも素晴らしく、おそらくMacの世界にもう少しうまく統合されています。(PLTスキームは現在Racketとして知られていますが、変更後は実験していません。)
loop
マクロの大量使用でした。
私はClojure、SBCL、ClozureCLの大ファンです。それらはすべて素晴らしいですが、あなたがしたいのがあなたのLispingチョップをリフレッシュすることだけであるならば、それらはまたやり過ぎです。それらはすべて、不条理な量の情報ハンティング、メーリングリスト検索、パッケージのインストール、ircの潜伏などを必要とします。
Dr Schemeは、インストールして実行するだけです。私は4年半前にDrSchemeを使ってSICPの最初の3章を終えました。スキームエバリュエーター自体を定義することほど深遠なものはありません。頭を悩ませたら、産業力のある兄弟たちに対してもっと忍耐力があります。
Schemeにとって、DrRacketは素晴らしいです(Racketに含まれています)。
Common Lispの場合、ReadyLispは素晴らしいです。SBCL、Aquamacs、Slimeをそのまま使用できる単一のdmg。
Webサイトから:
Ready Lispは、Aquamacs、SBCL、SLIMEなど、特にMac OSX向けのいくつかの人気のあるCommonLispパッケージをまとめたものです。ダウンロードすると、ダブルクリックできる単一のアプリケーションバンドルが作成され、完全に構成されたCommon LispREPLが表示されます。
最小限の手間でCommonLispの美しさを試したいOSXユーザーにとって理想的です。また、教師がMacの生徒に無料の完全なCommonLisp環境を提供して持ち帰ることもできます。要件
Ready Lispの現在のバージョンは20090127であり、Mac OS X 10.5(Leopard)が必要です。
これには、次のコンポーネントソフトウェアバージョンが含まれます。
Aquamacs 1.6 SBCL 1.0.24 SLIME 2009-01-23 CL-FAD 0.6.2 CL-PPCRE 2.0.1 LOCAL-TIME 0.9.3 SERIES 2.2.10 CL HyperSpec 7.0 paredit.el 20 redshank.el 1 cldoc.el 1.16
Clojureで遊び始めたところです。それは明らかに素晴らしいウェブフレームワークを持っており、JVMバイトコードにコンパイルされます。
DrSchemeもよく使います。シンプルでありながら便利なIDEです。
「Lisp」の定義方法によっては、Clojureが適切な場合があります。OS Xで正常に実行されます(JVMが実行される場所であればどこでも実行されます)。Web機能があり、無料です。
また、新しくて新鮮で楽しく使用できるという利点もあります。趣味のプログラミングに最適かもしれません。WebアプリやGUIアプリを作成するのは簡単です(JavaのSwingまたはQtを使用)。
私自身は使ったことがありませんが、Steel Bank CommonLispはredditで好評を博しています。オープンソースで無料なので、趣味のプログラミングに適した価格です。
過去には、私が持っていたGNU Common Lispのは、私のMacBook Proの上で実行されています。
Racketは、Schemeの初心者(または、Schemeを使用しているプログラミング初心者、さらにはHtDPを使用するプログラミング初心者)に最適なIDEの1つであるため、初心者にはお勧めします。
小さなSchemeシステムを自分で変更したり、ソースコードを読んだりすることに興味がある人にとって、もう1つのオプションは、Larceny Schemeです。これは、JITコンパイラであるTwobit自体が完全にSchemeに実装されているためです。
更新:さらに、ChezSchemeは最近オープンソース化されました:
https://github.com/cisco/ChezScheme
(Larcenyほど「小さく」はないかもしれませんが、非常に積極的な最適化コンパイラーを備えています。)
Lispユーザー協会またはCommonLisp Wikiにあるものを見て、そこにあるものを確認することをお勧めします。私はSteelBank Common LispとEmacsをセットアップしましたが、これまでのところほとんど何もしていません。
Clozure CLはMacストアから無料で入手できます!
私は最近自分自身に同じ質問をしています。OS XでDrSchemeを使用したことで、どのプラットフォームでもSchemeディストリビューションの最初の選択肢になります。非常に優れたIDE、デバッグ機能、および優れたライブラリ/フレームワークのセット(Macでも機能する非常に優れたGUIツールキットを含む;-))
しかし、私は今、CommonLispにとって同様に快適な環境を探しています。それはCCL(OpenMCL)対SBCLに帰着しました。SBCLが一般的な選択肢のようですが、OSXではスレッド化がサポートされていないことを読みました。(これは本当に問題ですか?)一方、Clozure CLは、ネイティブスレッド、obcj-bridgeなどの優れたサポートを誇っています...
CCLは少し奇妙だと思いますが、しばらくはそれに固執するつもりです-それでも統合の論理的な選択のように見えます。
私は環境としてEmacs23(-with-nsを使用してソースから構築)とSlimeを使用していますが、これは私にとってうまく機能します。:-)