REPL ожидает, что каждая отдельная строка будет полной программой, и поскольку одинокая подпись не является полной программой, вы получите ошибку.
Чтобы выполнить REPL для нескольких строк перед попыткой их скомпилировать, используйте команду :paste
, чтобы начать блок, а затем нажмите Ctrl + D, чтобы завершить его:
> :paste
… f :: Int -> Int
… f x = x + 42
… ^D
> f 1
43
Эту и другие команды можно обнаружить, набрав :?
, поскольку REPL предлагает вам сделать это в начале сеанса:
PSCi, version 0.13.6
Type :? for help