On Wed, 30 May 2007 09:38:10 +0200, Tomasz Zielonka
<[EMAIL PROTECTED]> wrote:
On Tue, May 29, 2007 at 09:43:03PM +0100, Andrew Coppin wrote:
Henning Thielemann wrote:
>On Sun, 27 May 2007, Andrew Coppin wrote:
>>But every now and then I discover an expression which is apparently
not
>>expressible without them - which is odd, considering they're only
>>"sugar"...
>
>Example?
Until I learned the trick of using lists as monads, I was utterly
perplexed as to how to get a Cartesian product
This is far from not expressible:
cart xs ys = concatMap (\x -> map ((,) x) ys) xs
A bit simpler is:
cart xs ys = [(x, y) | x <- xs, y <- ys]
or:
cart xs ys =
do
x <- xs
y <- ys
return (x, y)
--
Met vriendelijke groet,
Henk-Jan van Tuyl
--
http://Van.Tuyl.eu/
--
Using Opera's revolutionary e-mail client:
https://secure.bmtmicro.com/opera/buy-opera.html?AID=789433
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe