История изменений
Исправление AndreyKl, (текущая версия) :
Я не вижу в данной ситуации связи с ленивостью. На сколько я понял ты считаешь что return (l++[b])
должно поместитьl++[b]
в качестве нового l
в твоё текущее окружение. Но это работает не совсем так.
Вероятно тебе стоит прочитать как работает оператор монадического связывания хотя бы на примере Maybe. Может быть вот здесь https://wiki.haskell.org/All_About_Monads#Maybe_a_monad .
Исходная версия AndreyKl, :
Я не вижу в данной ситуации связи с ленивостью.