Ввод-вывод в Haskell функционален?

Я только начинаю , чтобы взглянуть на Haskell (мой предыдущий опыт FP на Scheme), и я наткнулся на этот код :

do { putStrLn "ABCDE" ; putStrLn "12345" }

Для меня это процедурное программирование, во всяком случае, особенно из-за последовательного характера побочных эффектов.

Не могли бы вы объяснить, как этот код «работает» в любых условиях. уважение?

15
задан Mehrdad 19 June 2011 в 00:17
поделиться