В чем причина дизайнерского решения в Scala, что монады не имеют функции return/unit в отличие от Haskell, где каждая монада имеет функцию возврата, которая помещает значение в стандартный монадический контекст для данной монады?
Например, почему List, Option, Set и т.д. не имеют функций возврата/единицы, определенных в стандартной библиотеке, как показано на слайдах ниже?
Я спрашиваю об этом, потому что в реактивном курсе Курсера Мартин Одерски явно упомянул об этом, как видно ниже в слайдах, но не объяснил, почему Scala не имеет их, даже если unit/return является существенным свойством монады.