Commit Graph

171 Commits

Author SHA1 Message Date
20d75db79a Fix/improve assignment to arrays and tables 2024-03-22 13:53:23 -04:00
f21fc700bb Handle type namespaces in other modules 2024-03-22 01:52:00 -04:00
4592e95fa9 Pull namespaces from the type binding 2024-03-21 13:33:10 -04:00
f142b4ae53 Fix issue with quoted string cords 2024-03-21 13:32:52 -04:00
a47bd2d569 Improvements to module imports 2024-03-19 23:29:32 -04:00
80ea0f8507 Corecursive modules 2024-03-19 14:30:40 -04:00
71f4da18f2 Prevent mulitple imports 2024-03-19 14:23:48 -04:00
adbb07fdc2 Module imports 2024-03-19 14:22:03 -04:00
7b444cd824 Insert semicolons where they should go 2024-03-18 18:06:20 -04:00
43ce0f4c1b Fix array:clear() 2024-03-18 18:03:41 -04:00
df2e01c15e Add some better file comments 2024-03-18 12:47:07 -04:00
0f70411cbf Fix doctests with functions 2024-03-17 22:08:05 -04:00
03b223ac51 Fix switch statement 2024-03-17 21:47:40 -04:00
655b677895 Preface symbols with file prefix 2024-03-17 20:40:40 -04:00
46ee3fc0ef Temporary fix for newlines between statements 2024-03-17 15:59:06 -04:00
a0faef7102 Support nested comprehensions 2024-03-17 15:26:25 -04:00
9932841530 Improve comprehensions for both arrays and tables 2024-03-17 14:46:36 -04:00
46decc9232 Skip/stop for 'while' loops 2024-03-15 13:45:25 -04:00
bc92bb72c8 Simplify loop code 2024-03-15 13:38:25 -04:00
5cdaf3e3fa Fancy skip/stop implementation 2024-03-15 13:35:30 -04:00
9454c5fa0d Properly compile conditionals with abort types in them 2024-03-15 13:07:41 -04:00
6f70286a4b Clean up codegen to not use macros 2024-03-14 13:50:24 -04:00
80ffb8044a Better codegen for negation 2024-03-14 13:47:40 -04:00
ecf425fb9a Rearrange expression/statement compilation code 2024-03-14 13:28:30 -04:00
d5d3f564bb Remove some shadowed variables 2024-03-14 02:48:07 -04:00
8847eaa660 Bugfix for looping 2024-03-14 02:44:37 -04:00
fdc3eadba2 Array comprehensions 2024-03-14 02:37:56 -04:00
130ddc8ea0 Improve codegen for assignment doctests 2024-03-10 01:42:21 -05:00
a90f8581c3 Clean up doctesting for assignments 2024-03-10 00:59:42 -05:00
a33f730617 Rearranging some files 2024-03-10 00:03:21 -05:00
fcd1381e3d Minor cleanups to get compilation working on clang 2024-03-09 23:21:44 -05:00
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