haskell,为什么ghci中的head'功能可以,但是无法编译?

BufBills
head' :: [a] -> a
head' [] = error "Cannot call head on emply list."
head' (x:_) = x 

main = do  
    putStrLn  "hello"
    let ret = head' [4,5,6]
    putStrLn ret 

上面的代码,我可以将其加载到ghci中,并正确调用head'函数。当我将其放入文件并尝试对其进行编译时。它发出错误消息。我不知道为什么。需要帮忙; 谢谢。

[1 of 1] Compiling Main             ( head.hs, head.o )

head.hs:7:22:
    No instance for (Num String) arising from the literal `4'
    Possible fix: add an instance declaration for (Num String)
    In the expression: 4
    In the first argument of head', namely `[4, 5, 6]'
    In the expression: head' [4, 5, 6]
大卫

putStrLn接受String(其类型为putStrLn :: String -> IO ()),而不是数字类型。你想要的是print

    ...
    print ret

print可以采用具有Show实例的任何类型它的类型是print :: Show a => a -> IO ()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Haskell:为什么可以在ghci中加载此文件,但是当我在拥抱中尝试执行相同操作时,却出现语法错误?

来自分类Dev

forEach参数与使用者功能接口参数不匹配,但是代码仍然可以编译,为什么?

来自分类Dev

Android项目可以编译,但是Android Studio中无法识别Maven依赖项

来自分类Dev

为什么Numba无法编译此功能?

来自分类Dev

为什么Haskell的SVGFonts库中的示例无法编译?

来自分类Dev

为什么 GHCi 在无法编译的提示下接受某些内容?

来自分类Dev

为什么此Megaparsec解析器可以在GHCi中工作,但不能在源文件中编译?

来自分类Dev

使Multiline Haskell功能在ghci中工作

来自分类Dev

为什么此功能在runghc中起作用而在ghci中不起作用?

来自分类Dev

为什么可以使用无法单独编译的 .hs 文件构建 Haskell 程序?

来自分类Dev

WinMain可以编译,但是wWinMain不在CodeBlocks中

来自分类Dev

jQuery更改功能似乎可以工作,但是什么也没做

来自分类Dev

为什么编译器无法在Haskell中为我们处理新类型?

来自分类Dev

为什么正确折叠可以在Haskell中处理无限列表?

来自分类Dev

为什么正确折叠可以在Haskell中处理无限列表?

来自分类Dev

Haskell中已编译代码和ghci之间的区别

来自分类Dev

为什么我无法在Haskell中按比例匹配模式?

来自分类Dev

为什么在Haskell中无法导出应用函子?

来自分类Dev

Windows中具有GHCI的Haskell外部功能接口

来自分类Dev

Windows中具有GHCI的Haskell外部功能接口

来自分类Dev

为什么无法编译?

来自分类Dev

为什么 A 中的类路径无法编译?

来自分类Dev

为什么XmlSerializer无法在.Net Core中序列化枚举值,但是在.NET Framework中可以正常工作

来自分类Dev

为什么`++ a ++`不能在C ++中编译而`(++ a)++`可以编译?

来自分类Dev

为什么在Rails 4上的ruby无法在head标签中重新加载任何内容

来自分类Dev

为什么无法成功解释从《 Haskell中的函数编程》一书中复制的haskell代码?

来自分类Dev

为什么我的React组件无法渲染HTML,但是可以正确记录日志?

来自分类Dev

使用OpenVPN时无法检索http站点,但是https站点可以正常工作。为什么?

来自分类Dev

为什么我的Javascript无法在WordPress上运行,但是在本地HTML上可以正常运行?

Related 相关文章

  1. 1

    Haskell:为什么可以在ghci中加载此文件,但是当我在拥抱中尝试执行相同操作时,却出现语法错误?

  2. 2

    forEach参数与使用者功能接口参数不匹配,但是代码仍然可以编译,为什么?

  3. 3

    Android项目可以编译,但是Android Studio中无法识别Maven依赖项

  4. 4

    为什么Numba无法编译此功能?

  5. 5

    为什么Haskell的SVGFonts库中的示例无法编译?

  6. 6

    为什么 GHCi 在无法编译的提示下接受某些内容?

  7. 7

    为什么此Megaparsec解析器可以在GHCi中工作,但不能在源文件中编译?

  8. 8

    使Multiline Haskell功能在ghci中工作

  9. 9

    为什么此功能在runghc中起作用而在ghci中不起作用?

  10. 10

    为什么可以使用无法单独编译的 .hs 文件构建 Haskell 程序?

  11. 11

    WinMain可以编译,但是wWinMain不在CodeBlocks中

  12. 12

    jQuery更改功能似乎可以工作,但是什么也没做

  13. 13

    为什么编译器无法在Haskell中为我们处理新类型?

  14. 14

    为什么正确折叠可以在Haskell中处理无限列表?

  15. 15

    为什么正确折叠可以在Haskell中处理无限列表?

  16. 16

    Haskell中已编译代码和ghci之间的区别

  17. 17

    为什么我无法在Haskell中按比例匹配模式?

  18. 18

    为什么在Haskell中无法导出应用函子?

  19. 19

    Windows中具有GHCI的Haskell外部功能接口

  20. 20

    Windows中具有GHCI的Haskell外部功能接口

  21. 21

    为什么无法编译?

  22. 22

    为什么 A 中的类路径无法编译?

  23. 23

    为什么XmlSerializer无法在.Net Core中序列化枚举值,但是在.NET Framework中可以正常工作

  24. 24

    为什么`++ a ++`不能在C ++中编译而`(++ a)++`可以编译?

  25. 25

    为什么在Rails 4上的ruby无法在head标签中重新加载任何内容

  26. 26

    为什么无法成功解释从《 Haskell中的函数编程》一书中复制的haskell代码?

  27. 27

    为什么我的React组件无法渲染HTML,但是可以正确记录日志?

  28. 28

    使用OpenVPN时无法检索http站点,但是https站点可以正常工作。为什么?

  29. 29

    为什么我的Javascript无法在WordPress上运行,但是在本地HTML上可以正常运行?

热门标签

归档