> > For example:
> >
> > foo x = show x
> > versus
> > foo = \x -> show x
>
> And, why not the simplest version: "foo = show"...
>
> If we call these three versions "foo1", "foo2" and "foo3", then they are
> semantically equivalent because, besides having the same type, one can
> substit
Bernard James wrote:
> In section 4.4.3 "Function and Pattern Bindings" of the Haskell 98
Report,
> it gives the following translation:
[ the pattern lambda construction to case expression conversion from the
Report]
> What does it mean by "semantically equivalent". A rough approximation
is
> "h