I wrote: >> Will (id :: A -> A $!) do the trick? Ulf Norell wrote: > The problem is not with id, it's with composition. For any f and g we > have > > f . g = \x -> f (g x) > > So _|_ . g = \x -> _|_ for any g. OK, so then how about f .! g = ((.) $! f) $! g -Yitz