These would be like the unrolled versions of Python’s generator expressions.
Examples:
let a:[Int] = for x in l { yield x*2 }
let b:[(Int,Int)] = for row in 0..<m { for col in 0..<n { yield (row,col) } }
let c:[(Int,Int)] = for row in 0..<m { for col in 0..<n where row+col < 5 { yield (row,col) } }