Yeah, I realized that right after I sent the email (I was composing "on the fly" and not copy-and-pasting).
I think the main reason I wrote it as an explicit lambda expression rather than just single = (==) was because I wanted it to parallel the other definitions. IMO, the preferred way to write it would have been "single x = \y -> x == y; I think "single = (==)" is much more difficult to understand at first glance. Doesn't really matter though; presumably the compiler would fix all of this :). -- Hal Daume III "Computer science is no more about computers | [EMAIL PROTECTED] than astronomy is about telescopes." -Dijkstra | www.isi.edu/~hdaume On Tue, 23 Apr 2002, Christian Sievers wrote: > Hal Daume III wrote: > > > I'd like to be able to define something like > > > single x = \y -> if x == y then True else False > > Just a note on style: it always hurts me to see something like > > if term then True else False > > -- this is just the same as 'term'. > > So you could say > > single x = \y -> x==y > > which is in turn just the same as > > single x = (x==) > > which is, amazingly, nothing more than > > single = (==) > > -- one can debatte whether this is still better style than the first variant, > but it's surely interesting to realize. > > > All the best, > Christian Sievers > _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
