[Haskell-cafe] Re: Functional programming for processing oflargeraster images

Simon Peyton-Jones simonpj at microsoft.com
Thu Jun 22 04:22:34 EDT 2006

| Everything else about Haskell is so great and well thought out (eg
| classes, no side effects, higher rank polymorphism, existentials) it
seems a
| pity to throw all this away just because of one unfortunate feature

I thought it might be worth mentioning that GHC (well, the HEAD, which
will become 6.6) supports "bang patterns".  See

Bang patterns make it much more convenient to write a strict function.
	f (x, !y) = ...
is strict both in the pair (of course) but also in the second component
of the pair, y.

You can also use them in lets
	let !x = <rhs> in <body>
which will evaluate <rhs> before <body>.

It's an experimental feature, and I'm interested to know how useful, or
otherwise, it turns out to be.


More information about the Haskell-Cafe mailing list