Because expressions are treated as guards in list comprehensions. I.e.: [ foo | x <- a, b, y <- c, d ]
Is interpreted as:
do x <- a
guard b
y <- c
guard d
return foo
Luke
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe
