トップ «前の日記(2008-04-01) 最新 次の日記(2008-04-07)» 編集

Route 477



2008-04-02

[tetris] (C)SHIRASEの足きりをぎりぎりで通過するムービー

というのを撮りました。emaさん、土居チャレンジャーの店員さんに感謝感謝。

自分のプレイを客観的に見るのは初めてなのですが、遅いですね(笑)。 トッププレイヤーの方の動画と比べると、 本当に下入れしてんのかと思うくらい。

これからは気合を入れて下入れしたいと思いますが…はたして島根県内にTi の基盤が存在するのか…。orz

[biwascheme] BiwaScheme 0.5 (CometとかTupleSpaceとか) を公開しました

どうも今月中は家でネットできなさそうな雰囲気なので、適当ですが現在のtrunkをパッケージングしました。

0.5には、秘蔵のCometによるブラウザ間通信機能のデモが含まれています。 簡単に言うと

  1. ブラウザAで (alert (ts-read '(1 _ _)) を実行
  2. ブラウザBで (ts-write '(1 2 3)) を実行
  3. その瞬間、ブラウザAで「(1 2 3)」が表示される

のようなことが出来ます。

動かしかた

スレッド機能を有効にしたGaucheが必要です。goshで(use gauche.threads)と入力してエラーが出なければOK。

あとは

$ cd tuplespace
$ gosh chat_server.scm 8888

でサーバを起動して、http://localhost:8888/tuplespace/chat.html にアクセスするとチャット画面が出る。はずです。 または http://localhost:8888/index.html でREPLが開くのでいろいろ遊んでみてください。

API

(ts-write データ)
Schemeのオブジェクトを一つタプル空間に書き込みます。
(ts-read パターン)
パターンに当てはまるタプルを探します。無ければ見つかるまで待ちます。パターンにはgaucheのutil.matchの書式がそのまま使えます。

例:

(ts-read '(1 2 _))  ; (1 2 3), (1 2 "foo"), (1 2 (3 4)) などにマッチ
(ts-read '(1 (? (lambda (x) (and (number? x) (> x 3)))))) ; (1 4), (1 5), (1 6) などにマッチ
(ts-take パターン)
ts-readと同じですが見つかったタプルをタプル空間から取り除きます。
(ts-readp パターン)
ts-readと同じですが見つからなかったら待たずに#fを返します。
(ts-takep パターン)
ts-takeと同じですが見つからなかったら待たずに#fを返します。

[junk] クラブモンブラン松江店

漫画が充実していてなかなか良いです。BGMはスーパーみたいだけど。

もやしもん読み中。

4063521060