Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不同类型的Haskell模式匹配_Haskell - Fatal编程技术网

不同类型的Haskell模式匹配

不同类型的Haskell模式匹配,haskell,Haskell,我如何在Haskell工作 --尝试编译时抛出错误。 foo'a'=“这是一个a” foo 0=“这是一个0” 他们各自工作: foo::Char->[Char] foo'a'=“这是一个a” foo::(等式a,数值a)=>a->[Char] foo 0=“这是一个0” 这不能是同一个函数,因为函数foo需要输入类型。你能做的就是定义一个类型类,并利用特殊的多态性。我很好奇你为什么要这样做,但我认为这是不可能的。可能创建一个,例如没有实际原因的AntonHarniakou,例如data F

我如何在Haskell工作

--尝试编译时抛出错误。
foo'a'=“这是一个a”
foo 0=“这是一个0”
他们各自工作:

foo::Char->[Char]
foo'a'=“这是一个a”
foo::(等式a,数值a)=>a->[Char]
foo 0=“这是一个0”

这不能是同一个函数,因为函数
foo
需要输入类型。你能做的就是定义一个类型类,并利用特殊的多态性。我很好奇你为什么要这样做,但我认为这是不可能的。可能创建一个,例如没有实际原因的AntonHarniakou,例如
data Foo=Foo Char | Foo Num
@AntonHarniakou。我在读书,我试着看看事情是否可行,我想这本书失败的原因可能值得理解。@WillemVanOnsem谢谢。