Сейчас тут ты залетел с двумя ногами как обычно, и как обычно на что-то нарываешься.
Если тебе что-то непонятно, это не значит, что это хреново.
Может, в этих стрелочках и весь кайф 🤷♂️
Нам откуда знать, не попробовав.
Единственное, что я знаю про ML-синтаксис, это оператор |>
Он изменяет синтаксис вызова
И ты вместо
handle(call(foobar(getData())))
пишешь
getData()
|> foobar
|> call
|> handle
Т.е. меняет синтаксис вызовов с развёрнутого на нормальный.
Выглядит заманчиво, если бы в моих ЯП такое было, я только так бы и писал.
Т.е. походу в ML-синтаксисе есть куча всяких стрелочек и операторов для компоновки всякого.
Но очевидно, надо в этом разбираться, чтобы было понятно...