История изменений
Исправление
hateyoufeel,
(текущая версия)
:
что такое «ReaderT».
Это монадический трансформер. Если проще, это такая штука, добавляющая к каждой функции, которая с ней объявлена, лишний невидимый за счёт каррирования аргумент, доступ к которому можно получить через специальный метод.
Т.е. в данном примере конфиг будет передаваться дополнительным параметром повсюду, но для этого нужно написать всего полторы строчки кода.
Тут есть пример кода: http://blog.ssanj.net/posts/2014-09-23-A-Simple-Reader-Monad-Example.html
Обычная структура с const не подойдет?
Тут вопрос в том как структуру передавать дальше по стеку вызовов.
Исправление
hateyoufeel,
:
что такое «ReaderT».
Это монадический трансформер. Если проще, это такая штука, добавляющая к каждой функции, которая с ней объявлена, лишний невидимый за счёт каррирования аргумент, доступ к которому можно получить через специальный метод.
Т.е. в данном примере конфиг будет передаваться дополнительным параметром повсюду, но для этого нужно написать всего полторы строчки кода.
Тут есть пример кода: http://blog.ssanj.net/posts/2014-09-23-A-Simple-Reader-Monad-Example.html
Обычная структура с const не подойдет?
Тут вопрос в том как структуру передавать дальше по стеку.
Исходная версия
hateyoufeel,
:
что такое «ReaderT».
Это монадический трансформер. Если проще, это такая штука, добавляющая к каждой функции, которая с ней объявлена, лишний невидимый за счёт каррирования аргумент, доступ к которому можно получить через специальный метод.
Т.е. в данном примере конфиг будет передаваться дополнительным параметром повсюду, но для этого нужно написать всего полторы строчки кода.
Тут есть пример кода: http://blog.ssanj.net/posts/2014-09-23-A-Simple-Reader-Monad-Example.html