Commit Graph

140 Commits

Author SHA1 Message Date
cbdd357b41 Deprecate secret langs (just use one-member structs) 2024-03-09 19:02:13 -05:00
5131fdff62 Improve handling of secret text 2024-03-09 18:47:56 -05:00
77c9669d41 Change lang stringification to include type name 2024-03-09 18:32:36 -05:00
2b83ab279d Add langs to the language 2024-03-09 18:22:12 -05:00
69162964e0 Implement function caching 2024-03-09 16:44:02 -05:00
b04a1b3090 Implement lambdas and closures 2024-03-09 16:03:38 -05:00
42da91936e Simplify reduction code a little bit 2024-03-09 14:54:36 -05:00
1627a913a4 Lambda fixes/improvements 2024-03-09 14:09:18 -05:00
955f047e06 First pass at lambdas/closures 2024-03-09 14:02:19 -05:00
b33aa8c11f Back to using ARRAY_FOREACH 2024-03-09 02:53:20 -05:00
18ef4c5b3f Table methods 2024-03-09 02:48:09 -05:00
8427037bb9 Refactor table methods to take table structs where possible 2024-03-08 14:33:54 -05:00
55eacb8a04 Array methods 2024-03-08 14:25:17 -05:00
07c2b0ec26 Array methods 2024-03-08 14:23:16 -05:00
fa66053e13 Use '$' for min/max variable 2024-03-07 12:15:38 -05:00
9479b3937c Just use mathlib symbols, don't redefine them 2024-03-07 00:44:57 -05:00
425466ce6e Add 'if x := var' conditionals for optional pointers 2024-03-06 13:36:36 -05:00
93b8e0ae17 Support more variants of looping over integers 2024-03-06 12:56:30 -05:00
03f8742eb7 Fix namespace initializers 2024-03-06 12:41:18 -05:00
211af05381 Fix up some array literal stuff with TCC 2024-03-06 02:27:01 -05:00
4968d45f5a Fix array iteration by inlining 2024-03-06 02:15:23 -05:00
38d5245a9a Fix up some min/max stuff 2024-03-05 14:46:01 -05:00
e29aa52460 Struct and enum methods and static members 2024-03-04 13:51:47 -05:00
0b7ca098ae Fix some bugs relating to NUL termination of strings 2024-03-04 01:34:12 -05:00
dc04286e3a Unicode normalization for equality, hashing, tests, and printing 2024-03-03 19:12:53 -05:00
23478e7036 Rename as_str -> as_text 2024-03-03 18:16:33 -05:00
8fab88c56f Rename Str -> Text 2024-03-03 18:15:45 -05:00
0fe255a7c1 Fix up unicode escapes 2024-03-03 17:49:40 -05:00
9512eb74d2 Bugfix 2024-03-03 17:30:23 -05:00
2eafa7a4da Fix issue with unnamed args getting name flag 2024-03-03 17:21:55 -05:00
32f27b6206 Fix table literals 2024-03-03 16:08:38 -05:00
5486cdcedb Only put 'pragma once' in compiled header file 2024-03-03 15:22:22 -05:00
b8640a2c30 Bugfix for module name parsing 2024-03-03 15:18:15 -05:00
2a7cfd7c36 Fix table literal issue for TCC compatibility 2024-03-03 15:14:59 -05:00
ea7fcd85b4 Make load method be "use$name" 2024-03-03 15:04:36 -05:00
09b1d07d8b Clean up transpiling into separate .c/.h files 2024-03-03 14:45:36 -05:00
fce79cf578 Wrap "&x" in parens to avoid ambiguity 2024-03-03 14:34:13 -05:00
c72d4ec8eb Make constructors actually functions for enums 2024-03-03 14:12:40 -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
ec7a9e5f10 Initial pass at namespacing 2024-03-03 13:04:50 -05:00
4dc70c84d4 First working method calls 2024-02-29 13:49:24 -05:00
8171a38b71 Add type namespaces 2024-02-29 13:28:39 -05:00
ab17cf7539 Flip COW bit when dereferencing pointers 2024-02-29 13:00:28 -05:00
0f34bd8f53 Bump refcounts for .keys/.values 2024-02-29 12:54:29 -05:00
291a0ed40c Simplify/clean up table iteration code 2024-02-29 12:45:10 -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
805c26e65a Pass typeinfos 2024-02-27 13:43:38 -05:00
ce0e1c25e2 Stop using namespace types 2024-02-27 13:39:12 -05:00
1e6df09900 Fix up some type namespace issues 2024-02-26 23:10:19 -05:00
115c75692b Better error checking 2024-02-26 23:02:09 -05:00