ほとんどの Clojure 専門家は、Rich Hickey のアリのデモ ( http://gist.github.com/1093917およびhttp://blip.tv/clojure/clojure-concurrency-819147 ) を見たことがあると思います。同じアプリの分散バージョンを作成しようとする場合、ただし各ブラウザーが 1 つのアリを制御するブラウザーベースの場合、Clojure/ClojureScript から関数のトランザクションの性質を支援するものはありますか (クライアントで実行されたとbehave
仮定) behave
)? それとも、Clojure/ClojureScript の STM 機能は本当に分散使用を意図していないのでしょうか?
つまり、クライアント上で (3,2) にいて (3,3) に移動したい場合、クライアント (ブラウザー) の世界 (リッチの元のバージョンと同じように、少し古くなっている可能性があります)スレッドが少し古くなったこと) その正方形は空ですが、サーバーにリクエストを送信し、サーバーの世界でその正方形がいっぱいであることを教えてくれる ClojureScript の分散型 STM はありますか? いいえ、その正方形はいっぱいでしたその動きを元に戻す必要があるため、次の動きは再び (3,2) から開始する必要があります。リッチの元のプレゼンテーションでは、Clojure の STM 機能に組み込まれてすべて自動化されていました。しかし、分散されている場合、それはより明確にする必要がありますか、それともこれを行うために組み込まれている既存の機能はありますか?
そのようなものが Clojure/ClojureScript に組み込まれていない場合、より適した他のプラットフォームはありますか?