А кто как работает с эффектами в кложур? я все про то же, как идиоматично кложуре/фп изолировать эффекты функций для тестового окружения, всякие штуки типа DI в кложуре через аргументы функций, таскания за собой контекста, или IoC на основе рекордов выглядят костыльно. В руби недавно появилась такая экспериментальная библиотека dry-effects, суть такая: эффект оборачивается в рубишный файбер и есть хэндлер который знает как работать с эффектом в зависимости от окружения. Я не использовал, но выглядит клево.