чем %{f: %{g: %{k: value1}, h: %{t: value2}} = obj?
Оно будет падать, если ключа нет. А так-то да, самый быстрый способ.
Ну по факту Pathex и делает case, оверхед только на оборачивание этого case в лямбду, насколько я понял.
Оно не будет быстрее, но паттерн-матчинг имеет сильно меньше функционала чем линзы. Например, один и тот же паттерн-матчинг работает только как четние или только как запись, тогда как Pathex.path работает в обе стороны, композабельный и всё такое
Ну, композабельность путей так себе фича.
Не, это очень важная фича
Это практически центральная фича
Хм. Для разбора больших документов с кучей вложенных документов с похожей структурой, пожалуй пригодится.
Обсуждают сегодня