Почему в Scala нет монады ввода-вывода?

Мне интересно, почему в Scala нет монады ввода-вывода, такой как Haskell.

Итак, в Scala типом возвращаемого значения метода readLine является String, тогда как в Haskell сопоставимая функция getLine имеет тип возвращаемого значения IO String.

Существует аналогичный вопрос по этой теме, но его ответ неудовлетворительный:

Использование ввода-вывода, безусловно, не является доминирующим стилем в scala.

Кто-нибудь может объяснить это немного подробнее? Каково было дизайнерское решение не включать монады ввода-вывода в Scala?

25
задан Community 23 May 2017 в 12:19
поделиться