我可以执行简单的操作,例如

Hugs> 2+2


例如。或任何操作,就此而言。

但是当涉及到实际尝试定义一个函数时,例如:

occurs :: Eq a => a -> [a] -> Bool
occurs x l = x `elem` l


然后我得到消息:

ERROR - Syntax error in input (unexpected `=')


在其他情况下,我也得到unexpected `::'。我正在使用WinHugs。

最佳答案

在交互模式下键入函数时,您需要使用let,并且还必须用分号分隔行:

let occurs :: Eq a => a -> [a] -> Bool; occurs x l = x `elem` l

10-08 12:39