да, но с implicit params не получится tagless final абстракции накручивать, но если это не надо, то да, с имплиситами это намного приятнее чем с ридером
мне ошибки трансформеров субъективно понятнее, чем ошибки с функциями, потому что трансформеры хоть как-то рассортированы, а аргументы функций тупо позиционные. а ещё если забыть пару аргументов у функции в монаде, то компилятор думает, что это у тебя монада (->), и показывает совсем нерелевантную ошибку в нерелевантном месте