Каковы потенциальные альтернативные представления (например, использование стрелок, линз, иконок Haskell, синтаксис) точечных выражений, которые могли бы больше походить на простой английский?
Вот тривиальный пример:
qNameIs :: String -> QName -> Bool
qNameIs = (. qName) . (==)
QName
- это запись из Text.Xml
Что может быть эквивалентно qNameIs
, но не точечным выражениям? В идеале те, которые показывают, что первый аргумент будет передан в (==)
, и результат будет оценен с результатом QName
, примененным ко второму аргументу этого выражения?