Catyと圏論いろいろ
- データ領域は実は集合ではない。setoid。だから、ほんとはsetoidの圏を使わないといけない。かなりめんどくさい。
- 基礎の圏は双デカルト圏であり半環圏である。これは基本のキ。
- 基礎の圏はskeletalかもしれない。(http://en.wikipedia.org/wiki/Skeleton_%28category_theory%29)
- ファシリティでモナドが定義され、クライスリ圏に拡張される。ここは難しい。クライスリ拡張が良い性質を持つかどうか不明。複数のモナドの関係もあるし。難しい。
- 包含付き圏(catigory with inclusions)である。包含(subcategory of inclusions)がないと、パイプが定義できない。
- ListモナドとMaybeモナド(Option型)は組み込まれている。
- 直和に関するトレースが存在する。直積のトレース? いまいち分からない。
- 例外に関して4項ホムセット(二車線データフロー)を持つ。
- トレースと例外はファントムタグ(#next, #except)で扱う。たぶん。
- evalを有効化すれば閉圏になるのだが、ここの考察は不十分。今まで、ベキ(指数)型をそれほど真面目に考えてなかった。