これを直接ghciで打とうとすると一行目のコードを打っておちますし、letをつけても二行目に辿りつけないのでやはりだめ。 で、どうやるかっていうので3パターンほど調べました。 :set +m ghciで複数行扱えるモードにしてしまうパターンです。 % ghci Prelude> :set +m Prelude> let square :: Int -> Int Prelude| square x = x * x <interactive>:5:1: parse error on input `square' Prelude> let square :: Int -> Int Prelude| square x = x * x <interactive>:7:2: parse error on input `square' Prelude> let square :: Int -> Int