Skip to content
Pannous edited this page Dec 21, 2022 · 5 revisions

for

The keyword for denotes iteration over lists or iterators

One common example would be to iterate over number ranges:

for 1..10 : print it // excluding 10
for 1...10 : print it // including 10
for 1 to 10 : print it // including 10
for 1 upto 10 : print it // excluding 10

Following swift, and the possibile confusion of developers, we might is_declared warnings or ask if they know what they are doing.

for … in

While the in operator may return lists compatible with for, it may also return other objects. In this case in binds with for to iterate over all such items:

3 in [1,2,3,4] // true == (3 at postion 3)
for x in [1,2,3,4] : print x // different situation

Same with of from

for TYPE in …

Interesting: structurally type-matching for condition

for friend in [foe1, friend1, foe2, friend2]: print it 

ONLY iterates over those elements of specified type (here:friend)!

This idea can be extended:

for LAMBDA CONDITION in …

for (it>2) in [1,2,3,4] : print it 

for PATTERN in …

for (even number) in [1,2,3,4] : print it 

Home

Philosophy

data & code blocks

features

inventions

evaluation

keywords

iteration

tasks

examples

todo : bad ideas and open questions

⚠️ specification and progress are out of sync

Clone this wiki locally