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。