22 lines
550 B
Markdown
22 lines
550 B
Markdown
![]() |
---
|
||
|
title: List Comprehensions
|
||
|
---
|
||
|
|
||
|
## List Comprehensions
|
||
|
|
||
|
List comprehensions are a powerful tool in haskell for working with sets.
|
||
|
|
||
|
```haskell
|
||
|
someNumbers :: [Int] # a list of integers containing, 1, 2 and 3
|
||
|
someNumbers = [1,2,3]
|
||
|
|
||
|
allLower :: [Char]
|
||
|
allLower = [toLower c | c <- "Hello, World!" ]
|
||
|
|
||
|
parity :: [(Int, Boolean)]
|
||
|
parity = [ ( x , even x ) | x <- [1,2,3] ]
|
||
|
```
|
||
|
Parity produces the following set: `[ (1, False), (2, True), (3, False) ]`
|
||
|
|
||
|
The right hand side of the list comprehension is composed of two parts; a generator and guards.
|