Haskell:代码随机打印出调用

Haskell:代码随机打印出调用,haskell,ghc,Haskell,Ghc,考虑这段Haskell代码,它通过将布尔表达式混和到NAND(如电路板上)并重建它来简化布尔表达式: 使用GHC 7.4.2编译时,我在Windows系统上获得以下输出: Before: And (Or (Not (Input 1)) (And (And (Input 2) (Input 1)) (Input 3))) (Not (Or (Inp ut 1) (And (Input 2) (Input 4)))) Mash: Nand (Nand (Nand (Nand (Nand (Inp

考虑这段Haskell代码,它通过将布尔表达式混和到NAND(如电路板上)并重建它来简化布尔表达式:

使用GHC 7.4.2编译时,我在Windows系统上获得以下输出:

Before:
And (Or (Not (Input 1)) (And (And (Input 2) (Input 1)) (Input 3))) (Not (Or (Inp
ut 1) (And (Input 2) (Input 4))))

Mash:
Nand (Nand (Nand (Nand (Nand (Input 1) (Input 1)) (Nand (Input 1) (Input 1))) (N
and (Nand (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (Input 2) (Input 1))) (In
put 3)) (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (Input 2) (Input 1))) (Inpu
t 3))) (Nand (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (Input 2) (Input 1)))
(Input 3)) (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (Input 2) (Input 1))) (I
nput 3))))) (Nand (Nand (Nand (Input 1) (Input 1)) (Nand (Nand (Nand (Input 2) (
Input 4)) (Nand (Input 2) (Input 4))) (Nand (Nand (Input 2) (Input 4)) (Nand (In
put 2) (Input 4))))) (Nand (Nand (Input 1) (Input 1)) (Nand (Nand (Nand (Input 2
) (Input 4)) (Nand (Input 2) (Input 4))) (Nand (Nand (Input 2) (Input 4)) (Nand
(Input 2) (Input 4))))))) (Nand (Nand (Nand (Nand (Input 1) (Input 1)) (Nand (In
put 1) (Input 1))) (Nand (Nand (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (Inp
ut 2) (Input 1))) (Input 3)) (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (Input
 2) (Input 1))) (Input 3))) (Nand (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (
Input 2) (Input 1))) (Input 3)) (Nand (Nand (Nand (Input 2) (Input 1)) (Nand (In
put 2) (Input 1))) (Input 3))))) (Nand (Nand (Nand (Input 1) (Input 1)) (Nand (N
and (Nand (Input 2) (Input 4)) (Nand (Input 2) (Input 4))) (Nand (Nand (Input 2)
 (Input 4)) (Nand (Input 2) (Input 4))))) (Nand (Nand (Input 1) (Input 1)) (Nand
 (Nand (Nand (Input 2) (Input 4)) (Nand (Input 2) (Input 4))) (Nand (Nand (Input
 2) (Input 4)) (Nand (Input 2) (Input 4)))))))

After:
simpl.exe:

在我看来:siml.exe之后的
毫无意义。这似乎是程序调用。我不明白发生了什么事。请注意。

simple.exe:
正在显示一条空的错误消息,肯定是由您的
错误[]
调用引起的<代码>错误
将字符串作为参数,由于
字符串=[Char]
[]
与空字符串相同。噢!谢谢,哈哈。我想不可能的错误案例并不是那么不可能的@卢基:你应该把它作为一个答案。