2007-10-02 [長年日記]
λ. maude の protecting, extending, including の違いは?
モジュールを拡張する際の protecting, extending, including の違いは何かと気になって確認してみたら、以下のような違いを表現するためのものらしい。
- protecting : no junk, no confusion
- extending : no confusion
- including : no restriction
ここで junk は新たな要素の追加を指し、confusionは二つのコンストラクタの間に新たな等式が成り立ってしまうような場合を指す。
ところで、no junk で confusion は許すようなものは何故ないのだろうか?