なんじゃくにっき

プログラミングの話題中心。

16種類の論理演算

↓に乗っている2値論理の16種類の論理演算の2項演算子Scalaで書いてみた。

http://ja.wikipedia.org/wiki/%E8%AB%96%E7%90%86%E6%BC%94%E7%AE%97

ただ単純に実装するとつまらないので、真偽表を使う(= case文を使う)のは
NANDだけにして、あとはNANDから導くようにしてみた。
(因みにNORだけでも他の論理演算は導ける)
ちょっと集積回路の勉強をした気分(?)


あと、単項演算子の¬(not)とかを定義したかったけど、
前置演算子として実装できなかったので残念。




https://gist.github.com/nanjakkun/5662243