What are potential alternative representations (e.g. using arrows, lenses, Haskell idioms, do syntax) of pointfree expressions that could read more like plain English?
Here is trivial example:
qNameIs :: String -> QName -> Bool
qNameIs = (. qName) . (==)
QName
is a record from Text.Xml
What are possible equivalent to qNameIs
but not pointful expressions? Ideally, ones that would show that first argument will be passed to (==)
and result will be evaluated with result of qName
applied to second argument of this expression?