SGF Reader
Lively Kernel勉強という言い訳で、数ヶ月前に遊んでいたMonte Carlo法によるコンピュータ囲碁プレイヤーをSqueakからJavaScriptに移植中。最強を目指しているわけではないが、Web Workerを使って4スレッドくらいで走らせると、Squeakでやるよりも多くのPlay Outができるようになりそうではある。Livelyの共有機能が作られていく上で、ネット対戦機能の実験台にもなれば良いかなと。
周辺機能を埋めるべく、以前書いたSGFのリーダーをOMeta/SqueakからOMeta/JSに移植。Livelyに付属のOMetaはバージョンがちょっと古くて使えない機能もあるので、Robertが更新してくれるまでの間は http://www.tinlizzie.org/ometa-js/#SGF で作業。いちおう動くようにはなりました。
それはそうと

- 作者: 美添一樹,山下宏,松原仁
- 出版社/メーカー: 共立出版
- 発売日: 2012/11/10
- メディア: 単行本
- クリック: 7回
- この商品を含むブログ (8件) を見る
Naomi Hirahara
しばらく前に読んで日記にも書いたHank Umemotoさんの本だが(http://d.hatena.ne.jp/squeaker/20130120#p1)、彼が「プロの助けを借りた」というプロの人はNaomi Hiraharaさんという人で、しかも彼女は隣のビルで働いていてバスケも良く一緒にやっているJimmyちゃんのお姉様ということが判明した。これは不思議なつながりだ。Jimmy曰く、Naomiさんは「彼の知っている中で執筆のみで食べていけている唯一の人」ということで、小説も結構たくさん書いていて一部ではそれなりに流行っているのである。
というわけで、先週末USCで行われていたLA Festival of Booksで運良く彼女のサイン会も行われていたので、ミーハー気分で出かけてサインもらってきました。
Mars One
http://applicants.mars-one.com/
"assuming that they will never return" とは言うものの、実は後から帰還可能になるという可能性はあったりして。
Web Workers
JavaScript初心者の私ですが、Web Workersで遊んでいます。https://developer.mozilla.org/en-US/docs/DOM/Using_web_workers や他のページを見ても、Workerそのものは"transient"なものであって、一度生成したら一度走らせて終了したらさようならして、というモデルが推奨(?)されているようです。コードを書き直すたびにページをリロードしている場合には違いはわかりませんが、Livelyのような環境では同じWorkerを保持しておいて何度も使えるわけですし、私がやりたいと思っている対話的なMonte Carlo シミュレーションでもそういう使い方ができてほしいわけです。
まあ話は簡単で、
postMessage("xyz")
calc = (function() {
var register = 0
return function() {return register++}
})()
onmessage = function (evt) {
var result = calc()
postMessage("result: " + result)
}
というようなWorker用のコードを書いておけば、Workspaceで
myWorker = new Worker("PlayerWorker.js")
myWorker.onmessage = function(evt) {
console.log(evt.data.toString())
}
myWorker.postMessage("")
というコードを実行できます。面白いのは、こちらのコードをひとまとめにして実行する(全選択してCmd-dを押す)と、Worker側のpostMessage("xyz")が実行されるときにはすでにクライアント側の"myWorker.onmessage() = ..."が実行されているので"xyz"がコンソールに出力されますが、各行を別々に実行したときにはそうはならないということでしょうか。もちろんもう一つの面白い点は、最後の"myWorker.postMessage("")を繰り返しCmd-dすると、結果はちゃんと
result: 0 result: 1 result: 2 result: 3 result: 4 ...
のように情報が記憶されている、というところでしょうか。大昔にLively Kernelのメーリングリストで話題になっていたhttps://github.com/eligrey/jsandbox でも結局はできていたことではあるでしょうが、まあ初心者にはそれでも発見です。
Lively Kernel
なぜかコミッターになりました。
https://github.com/LivelyKernel/LivelyKernel
色彩を持たない多崎つくると、彼の巡礼の年

- 作者: 村上春樹
- 出版社/メーカー: 文藝春秋
- 発売日: 2013/04/12
- メディア: ハードカバー
- クリック: 3,074回
- この商品を含むブログ (334件) を見る