えちょ記

語らないブログ

はすける的「栞」とは

Monadiusすごいっす!なんか自分でもゲームが作れそうになる気がするっ!
‥‥なんてたわごとはともかく、解説ページに習って、ちょっとトップダウン的に栞とは何かを考えてみたいと思います。今日は時間が無いので直感メモだけ(^^;
で、栞とは?

  • loadイベントによって初期化を行う
  • requestイベントで渡されるSHIORIリクエストに従ってSHIORIレスポンスを返す
  • unloadイベントで終了する

ぶっちゃければこれを適切に処理するDLLがあれば、それはSHIORIサーバですね。ということで細かいことは置いておいて、まずは直感で。

SHIORI.hs

module SHIORI(
  SHIORI(..)
)where
 
class SHIORI s where         -- sが栞であるとは、
  load::String->IO s         -- loadアクションによってsが構築され、
  request::SHIORIRequest     -- requestアクションでリクエストより
         ->s                 --       sを参照することによって
         ->IO SHIORIResponse --       レスポンスが生成され
  unload::s->IO ()           -- unloadアクションによってsが開放されるものである

‥‥もなどがわかってないよなぁ。てゆーかsはdicと変数(セーブする変数を含む)を持つステートマシンなわけだけど、どこで状態維持すればいいんだとか、Haskellでどうやって表現するのかまださっぱりわからない予感だ‥‥orz。