|
|
List ComprehensionA list comprehension is a Haskell syntax that is similar to "set comprehensions" or "set-builder notation", ie the notation -
In Haskell list comprehensions this would be written as S = | x<-[0.., x^2>3] where 0.. represents N, and x^2>3 represents the conditional. It is clear that the two notations are almost identical. The Haskell interpreter actually converts instances of list comprehensions to expressions involving the higher-order functions map and filter. For example S above can be written as S = filter (\x -> x^2 > 3) 0.. The Python programming language has a near-equivalent mechanism for expressing list comprehensions. Corresponding example would be: L = range(100) # this produces a list of integers from 0 to 99 S = for x in L if x**2 > 3
|
 |