af15e89303
For arrays, use implicit filename from macro
2024-09-04 05:04:45 -04:00
61e482f6f3
Initial WIP first past
2024-09-02 18:47:39 -04:00
7472837ee5
Add array:first(predicate:func(x:&T)->Bool)->@%T?
2024-08-18 22:28:04 -04:00
6ef0583868
Fix array indexing
2024-08-18 15:51:19 -04:00
688f883e16
Add array:find()
2024-08-15 03:01:04 -04:00
66ae30ac29
Add method for array:remove_item(item) and rename
...
array:remove(index)->array:remove_at(index) to avoid confusion. Also
hook up array:has()
2024-08-15 02:39:35 -04:00
ed1667cb37
Add array:shuffled() and checks for array insertion
2024-08-15 02:17:53 -04:00
eccc4e4721
Add binary search method to arrays
2024-08-15 01:59:42 -04:00
9c2d7c437d
Fix up type conversions with ints and nums
2024-08-14 14:57:01 -04:00
d08f795794
Partially working first draft of bigints
2024-08-13 01:30:25 -04:00
6aabed4fcc
Fix some COW bugs for arrays/tables/sets
2024-08-12 17:44:05 -04:00
948d6b4c22
Add array:counts()
2024-08-10 16:36:50 -04:00
ff4ea60daf
Tweaks to array implementation, including changing how the bits are
...
allocated, making more explicit checks for refcounts and max values,
optimizations for certain methods, and adding compile-time errors for
arrays that hold items that are too large.
2024-08-04 14:22:58 -04:00
adccc56880
Switch around some of the logic for array:random() and array:shuffle()
...
to use Int$random() and return values
2024-08-04 13:03:55 -04:00
09204f4ce8
Revert "Fix array:random() to return a random item using correct RNG logic,"
...
This reverts commit 68b34cf00b
.
2024-08-03 17:44:22 -04:00
68b34cf00b
Fix array:random() to return a random item using correct RNG logic,
...
rather than a reference.
2024-08-03 17:33:18 -04:00
46396646bf
Add proper error check for heap popping
2024-08-03 15:36:40 -04:00
167634eaa4
Change array API to take a padded item size instead of a type info in
...
most cases
2024-08-03 15:33:50 -04:00
16c2e3f590
Incrementally moving towards passing array entry sizes explicitly
2024-08-03 15:06:59 -04:00
2b9bec18a4
Fix for stride overflows in arrays
2024-08-03 14:40:56 -04:00
7911df8294
Make sure array slicing doesn't require a pointer and disallow automatic
...
stackifying of values
2024-07-22 13:54:03 -04:00
fb95bbb1d4
Deprecate array:pairs() and switch iterator functions to use enums
2024-07-20 16:45:13 -04:00
f64aaf5960
Add array:pairs()
2024-07-13 18:05:14 -04:00
068d0e8563
Add array:to() to split out functionality of array:from()
2024-07-10 13:42:58 -04:00
10e86153a2
Replace array:slice() with array:from(first, last) and array:by(step)
2024-07-10 13:34:45 -04:00
a179068d71
Improvements to error message printouts
2024-07-05 00:10:31 -04:00
ed935eb882
Fix array_lvalue
2024-06-18 01:32:44 -04:00
2dd9392ef9
Fix USE_COLOR
2024-04-20 14:58:32 -04:00
e33aff908b
Inline color file
2024-04-20 14:24:37 -04:00
3b0dce04a0
Add heapify(), heap_push(), and heap_pop()
2024-04-19 13:29:04 -04:00
369c601a56
Invert escaping so user symbols get prepended with "$" and builtin
...
symbols don't
2024-04-16 13:50:07 -04:00
fae2b2caa0
Add array:sample()
2024-04-02 23:28:59 -04:00
95100469b6
Add array:sorted()
2024-04-02 13:13:33 -04:00
c73e96ff91
Add comparison operator <> and array method to sort by a custom
...
comparison function
2024-04-02 13:08:06 -04:00
04d9adc813
Switch naming convention to use '$' in symbols more
2024-03-29 12:54:31 -04:00
d94053ca77
Add array:reversed()
2024-03-26 14:59:52 -04:00
135e23094c
Improve codegen for table/array iteration by inlining the iteration
...
macros
2024-03-26 14:02:48 -04:00
a29d2ed6d1
Improve COW/etc handling for update assignments
2024-03-24 14:28:20 -04:00
20d75db79a
Fix/improve assignment to arrays and tables
2024-03-22 13:53:23 -04:00
7622f62935
More file comments
2024-03-18 12:57:49 -04:00
fdc3eadba2
Array comprehensions
2024-03-14 02:37:56 -04:00
a33f730617
Rearranging some files
2024-03-10 00:03:21 -05:00
07c2b0ec26
Array methods
2024-03-08 14:23:16 -05:00
8e62018546
Rename Array_random -> Array__random
2024-03-08 13:53:38 -05:00
1677d7a1b9
Fix negative index issue and add array:random()
2024-03-08 13:00:29 -05:00
211af05381
Fix up some array literal stuff with TCC
2024-03-06 02:27:01 -05:00
23478e7036
Rename as_str -> as_text
2024-03-03 18:16:33 -05:00
bf5a725345
Definitively go with "Int" and "Num" over "Int64" and "Num64", plus add
...
Int__bits()
2024-03-03 13:37:05 -05:00
8171a38b71
Add type namespaces
2024-02-29 13:28:39 -05:00
ec75208980
Fix up some import issues and improve arrays to use saturating refcounts
...
instead of .copy_on_write
2024-02-29 12:37:09 -05:00