934b843b1c
Add .text_content as a field on DSLs instead of a method
2024-08-19 14:29:58 -04:00
4765bb4120
Update test to reflect new numeric precision
2024-08-19 12:40:29 -04:00
70d6a18f59
Add test for importing initialized values
2024-08-19 00:53:28 -04:00
8363d53bd2
Update channel API to take a Where parameter
2024-08-18 23:59:13 -04:00
9e07c6adc7
Add Channel:peek()
2024-08-18 23:31:36 -04:00
2e8c949fdc
Rename push/pop to give/get, since it's not stack-ordered
2024-08-18 23:24:23 -04:00
7472837ee5
Add array:first(predicate:func(x:&T)->Bool)->@%T?
2024-08-18 22:28:04 -04:00
6f3b2c073a
Add enum.tag
as a way to do a boolean test for whether a value has a
...
particular tag or not
2024-08-18 20:58:36 -04:00
967b649da2
Deprecate #
operator in favor of .length and fix up some issues
2024-08-18 20:39:57 -04:00
a49870f810
Add primality testing and next_prime()/prev_prime()
2024-08-18 15:22:51 -04:00
f4b04a1b8c
Improved syntax for dollar-string literals
2024-08-18 14:44:15 -04:00
04603308af
Tweak test code
2024-08-18 12:52:53 -04:00
bac188ce07
Change division and modulus to use euclidean division, plus fix up a few
...
integer bugs
2024-08-16 14:24:20 -04:00
ce6f312c94
Add binary search test
2024-08-15 14:01:36 -04:00
5a0502bdf5
Fix some edge cases
2024-08-13 14:13:02 -04:00
f4011eb489
Remove test
2024-08-13 02:46:56 -04:00
80af2ea547
Fixes
2024-08-13 02:21:21 -04:00
158a1c6ad2
More fixes
2024-08-13 02:09:18 -04:00
d08f795794
Partially working first draft of bigints
2024-08-13 01:30:25 -04:00
c139ba2aae
Fix old syntax
2024-08-12 17:43:01 -04:00
8b564f6dd1
Fix deadlock issue
2024-08-12 17:42:51 -04:00
d2f4d07585
Support channels with maximum size
2024-08-11 15:04:22 -04:00
2ecb5fe885
Add channels and threads
2024-08-11 14:47:34 -04:00
6d3d104363
Overhaul of operator metamethods
2024-08-10 20:50:15 -04:00
b37bd70b60
For tables, deprecate support for square bracket indexing and .default
...
values, replacing them with a `:bump()` function for tables with numeric
values. This means that counters can be implemented easily without the
need to mask complexity.
2024-08-10 16:03:41 -04:00
8d3d591312
Add Sets to the language
2024-08-10 15:15:38 -04:00
cb6cebf12e
Add test for iterators
2024-08-10 14:52:53 -04:00
416300287f
Add test for ranges
2024-08-10 14:52:42 -04:00
f78cd6357a
Change table removal function to use values instead of references
2024-08-08 13:20:38 -04:00
279cd23143
Micro optimization for iterating over array ranges
2024-07-20 17:13:15 -04:00
fb95bbb1d4
Deprecate array:pairs() and switch iterator functions to use enums
2024-07-20 16:45:13 -04:00
d3f14cf53c
Support nested lambda closures
2024-07-14 14:13:23 -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
e51e6f840c
Tweak syntax for debug prints
2024-07-05 01:55:02 -04:00
2c89f3385f
Fixes for defer statements in lambdas
2024-07-04 18:09:33 -04:00
6a105fbd80
Add 'defer'
2024-07-04 18:00:01 -04:00
9d9fe12987
Add !!
statement for printing text
2024-07-04 16:23:05 -04:00
38622ccbec
Change metamethod names
2024-07-04 13:40:09 -04:00
22063462a9
Add __length and __negative metamethods
2024-07-04 13:37:23 -04:00
ba66a51a9e
Add multiline string literal test
2024-07-01 13:09:26 -04:00
7dc8189266
Add test for optionals
2024-07-01 12:30:22 -04:00
37a7beb28f
Add test for metamethods
2024-07-01 12:30:07 -04:00
ed935eb882
Fix array_lvalue
2024-06-18 01:32:44 -04:00
f5dc37c86c
Add test for array member assignment
2024-06-18 01:31:23 -04:00
7e261bea9b
Fix 'use' test to use 'import' instead
2024-06-17 17:33:32 -04:00
bf3cdc3dfa
Refine the parsing of blocks so it's always ':' [inline-block] [indent indented-block]
2024-05-23 13:09:59 -04:00
fba2b99b65
Support 'while when'
2024-05-23 12:40:21 -04:00
5b1960859f
Hook up Text.has(), Text.trimmed(), Text.without()
2024-05-20 15:19:31 -04:00
1924f75647
Support corecursive structs
2024-05-14 13:30:46 -04:00
c2daf6a928
Clean up 'when' syntax
2024-05-01 13:53:51 -04:00
2e27b88c1b
Improved syntax for optionals
2024-04-30 13:18:47 -04:00
3c0a8f0b89
Syntax tweak: use ':' for blocks
2024-04-28 14:58:55 -04:00
6308325252
Add constructor/casting for ints and nums
2024-04-23 13:12:49 -04:00
5fd85d7e0b
Add Num.mix()
2024-04-22 14:49:36 -04:00
3590bf3407
Better imports for types
2024-04-21 14:58:33 -04:00
3b0dce04a0
Add heapify(), heap_push(), and heap_pop()
2024-04-19 13:29:04 -04:00
63e6ba596a
Change table syntax to {key:value} instead of {key=>value}
2024-04-13 13:39:44 -04:00
6c01eef851
Introducing the main() function
2024-04-12 13:09:31 -04:00
0f9c1f4eb4
Add corecursive func test
2024-04-10 11:53:18 -04:00
bec67efb11
Add test for array:sample()
2024-04-02 23:41:26 -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
d94053ca77
Add array:reversed()
2024-03-26 14:59:52 -04:00
5157988efa
Implement 'extern' functionality
2024-03-24 15:06:59 -04:00
5f3dac786c
Clean up codegen for empty tagged data
2024-03-17 22:17:21 -04:00
6905f759e5
Empty enums use a singleton instead of a constructor
2024-03-17 22:06:55 -04:00
47f627f5dd
Update test
2024-03-17 21:48:53 -04:00
ccba8abf73
Add tests for nested comprehensions
2024-03-17 15:28:46 -04:00
9932841530
Improve comprehensions for both arrays and tables
2024-03-17 14:46:36 -04:00
5c2bb00baf
Add conditional loop comprehension
2024-03-17 12:50:17 -04:00
341087026c
More array tests
2024-03-17 12:49:28 -04:00
8847eaa660
Bugfix for looping
2024-03-14 02:44:37 -04:00
89d7098654
Add test for secret structs
2024-03-09 19:06:09 -05:00
170c0a4197
Add lang tests
2024-03-09 19:03:35 -05:00
2b83ab279d
Add langs to the language
2024-03-09 18:22:12 -05:00
5cfc01ac09
Add function/caching test
2024-03-09 16:46:25 -05:00
00d4e98ba1
Extra lambda test
2024-03-09 16:08:03 -05:00
b04a1b3090
Implement lambdas and closures
2024-03-09 16:03:38 -05:00
a13f642679
Tweaking tests
2024-03-09 14:12:15 -05:00
1627a913a4
Lambda fixes/improvements
2024-03-09 14:09:18 -05:00
dfd38cdb69
Simple lambda test
2024-03-09 14:03:42 -05:00
06549741aa
Tweaking array tests
2024-03-07 12:21:39 -05:00
6583221c0b
More tests
2024-03-07 12:18:01 -05:00
cd1785b5cb
Added test
2024-03-07 12:07:14 -05:00
4e6001fa55
Add num32 test
2024-03-07 12:00:16 -05:00
558c8588ee
Fix default values for structs
2024-03-05 12:55:38 -05:00
0b7ca098ae
Fix some bugs relating to NUL termination of strings
2024-03-04 01:34:12 -05:00
1f6aa4cac7
Add methods for text:clusters(), text:codepoints(), text:bytes()
2024-03-03 19:40:01 -05:00
dc04286e3a
Unicode normalization for equality, hashing, tests, and printing
2024-03-03 19:12:53 -05:00
d8a533cdf0
Rename string test to text
2024-03-03 18:19:56 -05:00
8fab88c56f
Rename Str -> Text
2024-03-03 18:15:45 -05:00
07f0a18136
Fix endptr stuff in parser
2024-03-03 17:52:22 -05:00
0fe255a7c1
Fix up unicode escapes
2024-03-03 17:49:40 -05:00
0c51ca73e0
String tests
2024-03-03 17:30:31 -05:00
94ab8c0ac6
Add some more tests
2024-03-03 17:24:46 -05:00
6a39b0cd3f
Num tests
2024-03-03 17:23:54 -05:00
c607b97732
Add Num.near() function
2024-03-03 17:14:11 -05:00
c5f315e338
Num methods
2024-03-03 16:44:45 -05:00
0256972ca6
Fix test
2024-03-03 13:38:27 -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
18db0fcee8
Add test for table iteration
2024-02-25 14:41:28 -05:00
4fc026a727
Add tests for '#' on collections
2024-02-25 14:38:04 -05:00
d06c63c70c
Table field access for .keys, .values, .default, .fallback
2024-02-25 14:35:25 -05:00
65f684fb6a
Rename file extensions
2024-02-24 16:07:52 -05:00
71b7392b08
Enum table test
2024-02-24 15:32:55 -05:00
0591d3db3a
Rename folder
2024-02-24 15:32:02 -05:00