このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

consults宣言

f:A→B consults S は、fがシステムコンポネントに対して問い合わせ(readアクセス)をするということ。これは、fがSをreadonlyモードで要求していることになる。Sがなければfは動かないが、Sへの書き込み(状態遷移操作)はしない。

Sへのreadonlyアクセスだけを許すってことは、Sのreadファセット(ファセットは制限された、あるいは少し改変されたインターフェース)だけを渡すってことだ。あるいは、writeアクセスを監視して、もしwriteすればfを処罰するようなことだろう。

圏論的には、fが、Sによる自明コモナドの余クライスリ射であることを宣言している。

readonlyアクセスがコモナド、writeonlyアクセスがモナドとすると、システムコンポネントのの2つのファセット(readファセットとwriteファセット)を使った、モナド/コモナド構造がシステムコンポネントの意味論になるのかな?