2

Clojure が特に継続を持たないことを選択したことは理解しています。

現在、ClojureScript で遊んでいます。

JavaScript の AJAX 呼び出しプロトコルでは、「AJAX 呼び出しが返された後に何をするか」を処理する関数を渡すことがよくあります。

これは非常に続きのように聞こえます。

ClojureScript で CPS を設定する標準的な方法はありますか?

そうでない場合、AJAX コールバックを処理する正しい方法は何ですか?

ありがとう!

4

2 に答える 2

2

Clojure (および ClojureScript)には、Scheme とは異なり、第一級の継続がありませんが、明示的な継続渡しスタイルでコードを書くことを妨げるものは何もありません。おっしゃるとおり、関数コールバックを受け取る JavaScript AJAX 呼び出しも同様です。

AJAX と ClojureScript の SO に関するこの他の質問を確認してください。これは、Google Closure ライブラリの使用方法を指摘しており、おそらく「すぐに使える」ものから始めるのが最も簡単です。

于 2012-07-06T14:54:49.817 に答える
0

Clojure 用の Ganelon マイクロフレームワーク (私が作成したもの) をチェックしてみてください。

そこには CPS はありませんが、サーバー側の AJAX コールバックがクライアント側のコンテンツを更新したり、クライアント側の JavaScript を実行したりできるという一般的な考え方は、Common Lisp の継続スタイルの Web フレームワークである Webblocks に非常に似ています。

Ganelon のデモとドキュメントは、http://ganelon.tomeklipski.com/ で入手できます。

于 2013-04-04T17:12:28.157 に答える