論理式処理系を途中まで書きました

今日,院試の勉強をしていて,あまりにも何もかもがわからなくて,何故か論理式処理系を書いていました.

途中でよく考えたらCNFが元の真理値と等しいかQuickCheckで検証をする用途にパーサーを書く必要は無いと気が付きました.

中途半端なものですが,これ以上書き足す予定が無いので公開します.

未来にparsecの参考になるかもしれない.

以下のように使えます.

λ> execPropForm "a -> !b" [("a", True), ("b", False)]
True