Я сподіваюся, що я правильно зрозумів ваше запитання, але я вважаю, що це відомий як (зворотний) трубопровідник на мовах ML.
[1; 2; 3] |> List.map sq // let it = [1; 4; 9]
Є також оператор зворотних труб, який допомагає впорядковувати операції.
printf "The value is.." <| 2 + 3 // let it = "The value is..5"
Це корисно, тому що нескорочена форма
printf "The value is.." 2 + 3 ;; error
буде помилка, тому що printf намагатиметься оцінити "The value is.." 2
і помилка, оскільки не визначено+
оператор. Щоб зробити цю роботу, використовуйте дужки:
printf "The value is.." (2 + 3) // let it = "The value is..5"
Що стосується практичного використання, |>
оператор неймовірно корисний і хліб-масло з багатьох мов, натхнених ML та ML, таких як F #, LiveScript та Elixir. <|
зустрічається рідше і зазвичай використовується лише тоді, коли збільшується читабельність.