flip the argument
fix name
point free
applicative
i don't like underscore
no newtype in frege?