>>400
文脈を持った型というよりも文脈を持った値として考えるべきじゃね。
そこでいう型は別に大事じゃない。関数適用したら別の方に簡単に変わるし。
大事なのはあくまでも文脈。
文脈を持った値というのは文脈を持つコンテナに包まれてる値としてもいいかも。
その文脈についての実装をbindとかで実装することでその文脈として適した振る舞いをすることができる。