ststic arrays and dynamic arrays
This commit is contained in:
6
tests/arr_dynamic.expected
Normal file
6
tests/arr_dynamic.expected
Normal file
@@ -0,0 +1,6 @@
|
||||
1
|
||||
3
|
||||
4
|
||||
10
|
||||
20
|
||||
30
|
||||
23
tests/arr_dynamic.sl
Normal file
23
tests/arr_dynamic.sl
Normal file
@@ -0,0 +1,23 @@
|
||||
import ../stdlib/stdlib.sl
|
||||
import ../stdlib/io.sl
|
||||
import ../stdlib/arr.sl
|
||||
|
||||
word main
|
||||
0 arr_new
|
||||
|
||||
dup arr_cap puti cr
|
||||
|
||||
10 swap arr_push
|
||||
20 swap arr_push
|
||||
30 swap arr_push
|
||||
|
||||
dup arr_len puti cr
|
||||
dup arr_cap puti cr
|
||||
|
||||
# print elements via explicit offsets: data[i] = @ (arr_data + i*8)
|
||||
dup arr_data 0 8 * + @ puti cr
|
||||
dup arr_data 1 8 * + @ puti cr
|
||||
dup arr_data 2 8 * + @ puti cr
|
||||
|
||||
arr_free
|
||||
end
|
||||
1
tests/arr_dynamic.test
Normal file
1
tests/arr_dynamic.test
Normal file
@@ -0,0 +1 @@
|
||||
python main.py tests/arr_dynamic.sl -o /tmp/arr_dynamic > /dev/null && /tmp/arr_dynamic
|
||||
2
tests/list.expected
Normal file
2
tests/list.expected
Normal file
@@ -0,0 +1,2 @@
|
||||
3
|
||||
2
|
||||
9
tests/list.sl
Normal file
9
tests/list.sl
Normal file
@@ -0,0 +1,9 @@
|
||||
import ../stdlib/stdlib.sl
|
||||
import ../stdlib/io.sl
|
||||
|
||||
word main
|
||||
[ 1 2 3 4 ]
|
||||
# element i is at: list_ptr + 8 + i*8
|
||||
dup 8 2 * 8 + + @ puti cr # index 2 = 3
|
||||
dup 8 1 * 8 + + @ puti cr # index 1 = 2
|
||||
end
|
||||
1
tests/list.test
Normal file
1
tests/list.test
Normal file
@@ -0,0 +1 @@
|
||||
python main.py tests/list.sl -o /tmp/list > /dev/null && /tmp/list
|
||||
Reference in New Issue
Block a user