Традиционно ответом на это было то, что код, написанный в интерактивной подсказке, живет внутри монады ввода-вывода. Как будто за Prelude>
прячется тень main = do
. Подумайте об этом таким образом, и отсутствие объявлений типов и синтаксиса объявлений верхнего уровня имеет смысл, как и все операторы let
.
Но Ptival прав: похоже, нам не придется беспокоиться об этом в ближайшее время.