loom
1#{ initial_value = null } type auto
2#{ initial_value = true } type bool
3#{ initial_value = "" } type string
4#{ initial_value = 0 } type int
5#{ initial_value = 0.0 } type float
6
7#{ hidden = true } contract hidden
8#{ tethered = true } contract tethered
9
10import array type array
11
12common auto, bool, string, int, float, hidden, tethered, array
13
14import "range.simodo-script" type Range
15
16//auto type
17// Range =
18// {
19// begin = 0,
20// end = 0,
21// counter = 0,
22// __init__ = fn [Range] (int : b, int : e) -> Range
23// {
24// Range : range
25//
26// range.begin = b
27// range.end = e
28// range.counter = b - 1
29//
30// return range
31// },
32// __iterator__ = fn (Range : range)
33// {
34// range.counter += 1
35// return [range.counter, range.counter <= range.end]
36// }
37// }
38
39common Range
40