-3

I am trying to write a function that prints a statement and calls on another function, but I am having some trouble defining it such what type to give it. Here's what I got so far.

code:

bad_input :: --dont know what goes here
bad_input = putStrLn "Bad Input"
            evaluate_input      
4

1 回答 1

1

首先,您不需要类型签名,Haskell 会在几乎所有情况下为您推断它。其次,您需要在 右视图上的表达式=,但是您有两个不相关的表达式 - 您需要以某种方式将它们联系在一起。IO这就引出了第三点:IO 与命令式语言完全不同,因为您需要将与“现实世界”的交互包装在一个名为及时” - 不利于输入/输出)和纯语言(这意味着一旦计算出值就永远不会改变)。

我可以为您编写该代码,但我觉得这样做弊大于利,并且让您比以前更加困惑。所以请听从 Cat Plus Plus 的建议并阅读http://learnyouahaskell.com/(或http://book.realworldhaskell.org/)以获得真正的理解。从简单的事情开始,在 Haskell 中 IO 并不容易。

于 2013-02-26T13:04:28.040 回答