18

Lispを使用して最新のRESTfulWebサービスをサポートすることに興味がありますが、多くのバリアントと実装を考えると、どこから始めればよいかを知るのは困難です。

Web関連のアプリケーションにLispを使用している人は確かにいますが(SOの質問を調べてみると、それがわかります)、他のアプリケーションよりもWebサービスに適したLisp実装はありますか?(たとえば、組み込みのWeb関連ライブラリ、パフォーマンスなどのネイティブUnicodeサポート)

私はUnicodeの「ハック」やWebフレームワークを探していません。私は主にあなたが箱から出して何を得るかに興味があります。私は、CLISP(学部のコンピューターサイエンスコースの一部としての一般的な多項式計算機)でのCommon Lispの使用経験は少ないですが、Lispの派生物や実装とは一致していません。特にこのように実際にLispを使用した人々から、この問題に対して特に良い選択があるかどうかを知ることは素晴らしいことです。

4

2 に答える 2

13

Racketの標準ライブラリには、 Webサーバーライブラリが含まれています。私はそれで遊んだことがありますが、Lispを操作する私の好みのインタラクティブな方法には適していないように感じました。継続ベースの制御フローなど、いくつかの優れた機能があるため、一見の価値があります。

個人的な経験から言えば、CommonLispはWeb開発に最適です。それは私のブログが実装されているものです 。Hunchentootはシンプルで強力で非常にLispyです。想像できるようにインタラクティブプログラミングがサポートされており、Websocketのようなもののためのプラグインがあります(私はまだ必要としていませんが)。

そうは言っても、 ClojureでのWebプログラミングも同様に快適です。ClojureとNoirを使用して、家族向けにWebベースのコミュニティハブを実装しました。スタイル的には、NoirはHunchentootとcl-whoの組み合わせに非常に似ています。ボーナスとして、Javaライブラリへのアクセスは非常に便利です。(私の場合、Common Lispでは困難だったOpenIDログインサポートの実装はClojureでは簡単でした。)このため、アプリケーションがサードパーティのWebサービスまたはデータ形式と対話する必要がある場合は、 Clojureをよく見てください。

RESTインターフェースは、Hunchentoot/NoirスタイルのWebフレームワークでも簡単に実行できます。私はラケットのウェブサーバーに精通していないので、この点でラケットのウェブサーバーを判断することはできません。

于 2012-04-07T18:02:52.100 に答える
6

私は1つがおそらくあなたのニーズに合うことを知っています:Clack

Clackは、PythonのWSGIとRubyのRackに触発されたCommonLisp用のWebアプリケーション環境です。

それが役に立てば幸い。

于 2012-04-08T07:27:05.123 に答える