ClojureScriptでイベントをモデル化する方法を理解しようとしています。 JavaScriptでイベントキューを設計するのは簡単です。関数の(変更可能な)配列を保持し、配列からのコールバックを追加または削除するヘルパー関数を提供します。イベントをトリガするときは、配列にリストされているすべてのコールバックを1つずつ呼び出すだけです。Clojure/ClojureScriptでのイベント駆動型プログラミングの扱い
このパラダイムは、機能的なスタイルとはかけ離れています。たとえば、副作用がない限り、コールバックを開始する点はありません。さらに、可変配列を使用して実装されています。それでも、ClojureScriptでは、何か便利なことをするイベントドリブンプログラミングを行う必要があるように思えます。今、私はGoogle Closureが既にイベントライブラリを実装していることを知っていますが、私の質問はそれをネイティブに実装することです。
基本的なClojure/ClojureScriptのデータ型はすべて不変であるため、このメカニズムを実装するための慣習的な方法は何でしょうか? refを変更しますか?ホストからの変更可能なデータ構造へのアクセス(Java resp JavaScript)?
私が正しく理解していれば、エージェントはClojureの正しいツールかもしれませんが、ClojureScriptには現在実装されていません。
そして、同じ概念のアトムを使ってすべてのイベントハンドラを保存します – Ankur
404が見つかりませんでした - それが別の場所に移動されていれば分かりますか? –