Commit Graph

358 Commits

Author SHA1 Message Date
dzaima
fde8f89354 remove _Thread_local because plenty other things don't have it 2021-11-07 19:01:29 +02:00
dzaima
049188d8a6 complete native ⋈ 2021-11-03 20:44:43 +02:00
dzaima
8cfbaf8b30 enum of primitive numbering 2021-11-03 20:28:00 +02:00
dzaima
dd3965cb3c 2021-11-03 20:16:04 +02:00
dzaima
6aaaaeb39c more consistent print method naming scheme 2021-11-02 18:32:25 +02:00
dzaima
3e372620a2 array-scalar comparison function lookup table 2021-10-24 21:12:39 +03:00
dzaima
d42dd3dcf9 merged typed types 2021-10-22 17:11:54 +03:00
dzaima
e38e4f89ae overallocate heap 2021-10-19 18:12:27 +03:00
dzaima
363309a218 some cleanup 2021-10-11 21:50:16 +03:00
dzaima
1072a8aa77 break less on recursive errors 2021-10-10 23:24:53 +03:00
dzaima
573b97f60b fast ∧´ 2021-10-04 00:23:53 +03:00
dzaima
f0c6671ec0 fast ∨´ 2021-10-04 00:10:24 +03:00
dzaima
3d23d8ef70 fast ≠` 2021-10-03 23:57:43 +03:00
dzaima
1bca264db8 bitarrs 2021-10-03 23:18:30 +03:00
dzaima
1c83483d53 fix formatter incorrectly consuming an argument 2021-09-29 21:19:21 +03:00
dzaima
7600431fa6 fix slow small array checks 2021-09-26 14:26:37 +03:00
dzaima
d2ea19c757 more slow warns 2021-09-26 13:36:37 +03:00
dzaima
797a848ed4 warn slow for unknown scans & folds & ⍋ 2021-09-26 01:04:18 +03:00
dzaima
28f40e5368 slow notes 2021-09-25 20:39:06 +03:00
dzaima
a91e351aee fix deep squeeze 2021-09-25 19:34:48 +03:00
dzaima
02605fe271 more tyarrTemplate.h instancing out of core.h 2021-09-25 15:53:42 +03:00
dzaima
a8c5dd6581 better squeezing 2021-09-25 15:26:06 +03:00
dzaima
ecb8af658b fix squeezing of ¯2147483648 2021-09-25 14:52:35 +03:00
dzaima
4bdc1ec3cd squeeze objects
negative effect on performance, but whatever
2021-09-25 14:39:48 +03:00
dzaima
a15f66c43b rename formatting functions 2021-09-25 13:53:53 +03:00
dzaima
749b3e1e81 Type to macro 2021-09-25 13:08:25 +03:00
dzaima
8cc6732cd4 ⌾⥊ and ⌾(const G H) 2021-09-25 02:34:58 +03:00
dzaima
20d0b3a288 time command 2021-09-23 10:46:49 +03:00
dzaima
b076f4bd43 fix ¯∞ formatting 2021-09-21 17:50:23 +03:00
dzaima
c53b4b2294 move builtins.h to root of src 2021-09-21 17:28:25 +03:00
dzaima
77cb03033d throw overflow error in isum 2021-09-21 17:02:38 +03:00
dzaima
97c1b1d31d overflow builtin cleanup 2021-09-21 16:56:20 +03:00
dzaima
6f99b58099 argument "-" for stdin file 2021-09-21 16:44:23 +03:00
dzaima
3da7323c57 char specialized squeezing 2021-09-20 23:32:02 +03:00
dzaima
7cc37e2723 special-case JIT ARRO for 1 and 2 items 2021-09-20 13:17:51 +03:00
dzaima
9494ef7b9f don't keep fl_squoze of not actually guaranteed full squeeze 2021-09-17 15:12:23 +03:00
dzaima
663c318219 deep squeeze 2021-09-17 14:46:03 +03:00
dzaima
62a96f1196 squoze 2021-09-16 23:20:58 +03:00
dzaima
427d508324 more precise flags usage 2021-09-16 21:54:37 +03:00
dzaima
93f362c4f2 use str8l more 2021-09-11 23:52:27 +03:00
dzaima
6cf3ccb7d5 use new conversion functions 2021-09-11 23:17:37 +03:00
dzaima
e98660bfa8 more typed array conversion 2021-09-11 23:17:17 +03:00
dzaima
0df5538a2a rename header files 2021-09-11 17:22:26 +03:00
dzaima
fc67c92510 typed atomUnit 2021-09-10 20:03:10 +03:00
dzaima
a36ae1a716 pass untagged pointer to get & getU 2021-09-09 23:52:18 +03:00
dzaima
59dcde16c9 untag this pointer of modifier impl functions 2021-09-09 21:38:56 +03:00
dzaima
337a6bbc5e more changes 2021-09-09 18:42:48 +03:00
dzaima
f8962c1eb9 use generic squeeze for arith 2021-09-09 17:30:40 +03:00
dzaima
0913d3b8f2 ElType cleanup 2021-09-09 17:21:19 +03:00
dzaima
fded6996e6 squeeze & hash fixes 2021-09-09 16:59:47 +03:00
dzaima
a6251ff3e7 squeeze int arrs on withFill 2021-09-09 16:08:13 +03:00
dzaima
ffc4cec1ae monadic i8/i16 arith 2021-09-05 23:26:31 +03:00
dzaima
667ac0b1d6 extremely basic i8/i16arr arith 2021-09-05 22:56:25 +03:00
dzaima
cec962fb8c usz multiplication 2021-09-05 21:51:00 +03:00
dzaima
e5338e931f fuzzing support 2021-09-05 18:00:28 +03:00
dzaima
21ba88751a working i8/i16-arrs 2021-09-05 16:06:31 +03:00
dzaima
80be141968 tyarr.c 2021-09-05 02:58:18 +03:00
dzaima
a191222967 tyarrTemplate.h 2021-09-05 02:29:06 +03:00
dzaima
4961c22c8b more incorrect fsizeof 2021-09-05 01:55:29 +03:00
dzaima
e225da87c7 fix i32/c32-arr allocation size 2021-09-05 01:36:16 +03:00
dzaima
8aa0687ef9 reorganize typed arr files 2021-09-05 01:10:40 +03:00
dzaima
2c7febca75 that was never a thing 2021-09-02 00:34:10 +03:00
dzaima
63cafe8e7b unified filling for ⥊ and ↑
well except for ¯N↑
2021-08-23 02:30:06 +03:00
dzaima
a3f87d4dcb fix %f and clarify o2s message 2021-08-22 23:20:28 +03:00
dzaima
750207f1f8 fix exponential notation 2021-08-21 06:16:07 +03:00
dzaima
b61380aa73 better number formatting 2021-08-21 05:52:17 +03:00
dzaima
a56a20b046 fix vm_fmtPoint on non-equal s and src types 2021-08-21 04:41:51 +03:00
dzaima
3991efd3cd full SETH 2021-08-21 03:32:11 +03:00
dzaima
521abe669d hopefully fix SETH refcounts 2021-08-16 00:48:15 +03:00
dzaima
0af6895f4b unfinished SETH 2021-08-15 03:54:13 +03:00
dzaima
de86ce2aaa src/README.md, and cleaning up things while at it 2021-08-14 21:27:06 +03:00
dzaima
5d1d3467d9 append only know character arrays in formatter 2021-08-14 16:35:23 +03:00
dzaima
10d0cdc2fe •SH 2021-08-13 23:22:37 +03:00
dzaima
8934db0ec5 impure function mess 2021-08-04 21:06:33 +03:00
dzaima
39d095c8dc fix •-things being considered pure 2021-08-04 20:32:16 +03:00
dzaima
e9aff609bf more m_arr refactoring cleanup 2021-08-03 20:52:53 +03:00
dzaima
6799e8f078 fix >0⥊0 2021-08-03 16:51:25 +03:00
dzaima
849eeff465 initialize ia on allocation always 2021-08-03 02:57:46 +03:00
dzaima
8d7a31c8e9 store object pointer in slice 2021-08-01 18:59:31 +03:00
dzaima
be10e0d509 better fork_c2 2021-08-01 04:15:00 +03:00
dzaima
65f2cca251 better fork_c1 2021-08-01 04:12:46 +03:00
dzaima
a444d4827d decSh doesn't really need to be split 2021-08-01 00:27:00 +03:00
dzaima
46d4acb72b special-case HArrs in withFill 2021-07-31 23:56:57 +03:00
dzaima
74a3a87166 handle arr⊸F and (arr G H) faster 2021-07-31 23:29:21 +03:00
dzaima
749b098f1e use decR less 2021-07-31 22:40:33 +03:00
dzaima
c00834cf15 move mm_free call into virtual function so dec is simpler 2021-07-30 04:40:56 +03:00
dzaima
b18157d86b native ⥊
it's horrible but it appears to work
2021-07-27 19:48:22 +03:00
dzaima
55f7f8ef5b couple more type fixes 2021-07-21 00:03:45 +03:00
dzaima
5dd7288144 strict prototypes 2021-07-20 22:21:59 +03:00
dzaima
7ee8d642dc trailing newlines 2021-07-20 22:18:37 +03:00
dzaima
d4d4521e52 more fixing of warnings 2021-07-20 22:09:59 +03:00
dzaima
0bcf3b592f more comparison type fixing
and some more / opt to make it not slower
2021-07-20 21:56:35 +03:00
dzaima
99896fbace improving loop counter variable types 2021-07-20 21:32:41 +03:00
dzaima
c2c64f9654 move thrF to a full function
0.3% more instrs with it never being called what
2021-07-20 02:57:18 +03:00
dzaima
78cd23907e make err fails more clear 2021-07-19 23:09:10 +03:00
dzaima
2e2b479d37 shorten mut_init 2021-07-19 19:25:25 +03:00
dzaima
708e06c0ea simplify mut usage where type is guaranteed correct 2021-07-19 04:22:18 +03:00
dzaima
9c66cbbb4b move noinline fns out of .h files 2021-07-19 03:48:52 +03:00
dzaima
43d2946447 fix refcount errors in merge 2021-07-16 23:11:34 +03:00
dzaima
576876dd32 fix warnings for usz==u64 2021-07-12 00:50:29 +03:00
dzaima
2a0b91e7b4 counters instead of allocB 2021-07-11 23:07:07 +03:00
dzaima
1b31c88e4c use mm_heapUsed() instead of allocB 2021-07-11 22:45:08 +03:00
dzaima
08723a3c80 use TI macros everywhere 2021-07-06 19:22:45 +03:00
dzaima
9ee36dae94 fix TypeInfo.arrD1 for c32arr 2021-07-03 17:01:39 +03:00
dzaima
ee3ef4370c waste less on thrF 2021-07-03 02:55:22 +03:00
dzaima
7999683edf skip value checking for builtin loading
perf is reporting an 0.15% increase in instruction count (what?), but that's not gonna stop me
2021-07-03 02:38:09 +03:00
dzaima
f75efbcc26 static harr.c functions 2021-07-03 02:04:31 +03:00
dzaima
ceb967bbd4 return Arr* from m_fillarrp 2021-07-03 01:53:26 +03:00
dzaima
08df9bfe7b arrP_sh* → arr_sh* 2021-07-03 01:38:56 +03:00
dzaima
d49d5a3e31 don't use arr_sh* 2021-07-03 01:37:54 +03:00
dzaima
c0a75327ef return Arr* from mut_fp 2021-07-03 01:25:55 +03:00
dzaima
c52a042eb4 return Arr* from slices 2021-07-03 01:25:55 +03:00
dzaima
daa8294252 return Arr* from m_(i32|c32|f64)arrp 2021-07-03 00:37:00 +03:00
dzaima
49810ce8bc rename mm_allocN 2021-07-03 00:27:20 +03:00
dzaima
43d0d1e043 delay tagging for arrays 2021-07-03 00:22:40 +03:00
dzaima
d8b2ac0268 delay tagging 2021-07-03 00:02:56 +03:00
dzaima
60bef6879c fix printRaw 2021-07-02 15:30:42 +03:00
dzaima
b32074f4d1 support nested compilation 2021-06-30 22:54:33 +03:00
dzaima
1fd61c5467 make err NOINLINE 2021-06-29 22:55:34 +03:00
dzaima
a4446716bf compiler errors 2021-06-27 20:28:19 +03:00
dzaima
b51cf8cfc2 fix CHKV 2021-06-19 21:28:57 +03:00
dzaima
d27dc57bed CHKV 2021-06-19 21:16:23 +03:00
dzaima
1afe46b393 move TAlloc/TStack around, immediate functions 2021-06-15 01:20:32 +03:00
dzaima
a0553b9798 faster nvm.c compiling 2021-06-10 22:37:11 +03:00
dzaima
981ba0e261 local stack pointer in JIT 2021-06-10 01:42:29 +03:00
dzaima
550b91688a extremely basic x86-64 generator 2021-06-09 18:47:50 +03:00
dzaima
96f3089410 proper i64 formatting, move openbsd hack up 2021-06-06 22:23:55 +03:00
dzaima
7e994dd913 modifiable defines 2021-06-06 16:50:18 +03:00
dzaima
47f8984e74 faster i32arrOfBools/ 2021-06-06 15:15:18 +03:00
dzaima
cdd4d136be make gcc happy 2021-06-04 15:47:26 +03:00
dzaima
4e0ea07eb2 correct character fill 2021-06-04 03:16:48 +03:00
dzaima
62d73b6acf faster asFill 2021-06-04 03:15:01 +03:00
dzaima
ba28f7e892 faster ≡ 2021-06-04 02:36:11 +03:00
dzaima
24f61bd5a5 move builtin defs to own file 2021-06-04 02:07:30 +03:00
dzaima
ae470d64b2 fix bi_emptySVec creation 2021-06-01 23:38:15 +03:00
dzaima
f1b1686300 •file.List 2021-06-01 22:12:34 +03:00
dzaima
b4ffc3115a •Exit 2021-06-01 20:32:24 +03:00
dzaima
b8c362247b fix F`fillarr leaking fill element
also print higher precision numbers
2021-06-01 17:13:43 +03:00
dzaima
7caa7dceb5 properly fall back to runtime in native ⊏ 2021-05-30 02:46:49 +03:00
dzaima
74fe1f1243 random changes 2021-05-30 00:56:17 +03:00
dzaima
510de71095 fix append_fmt appending a null byte 2021-05-29 15:02:36 +03:00
dzaima
ff2af490b8 special-case appending atoms with ∾ 2021-05-27 20:13:22 +03:00
dzaima
3ad82faadd split fillEqual into rare and non-rare versions 2021-05-27 19:44:15 +03:00
dzaima
d9110e8b5a optimize v_get, v_set, and a bit of fills 2021-05-27 19:00:08 +03:00
dzaima
752a68cb2d static const tagged builtins 2021-05-27 18:08:21 +03:00
dzaima
3b017648d8 extended variables, REPL support 2021-05-27 04:05:17 +03:00
dzaima
48229571ba proper bytecode rewriting 2021-05-26 16:34:36 +03:00
dzaima
7bf3b4be50 store directly needed blocks in bodies 2021-05-26 14:45:29 +03:00
dzaima
582273229b wrap 2021-05-25 02:52:21 +03:00
dzaima
50e76c8c04 move some headers & defs around 2021-05-25 00:51:09 +03:00
dzaima
8dc1ffd7c3 move atomEqual around 2021-05-24 18:26:38 +03:00
dzaima
b2e65cc9b7 separate out simple comparison 2021-05-24 18:05:35 +03:00
dzaima
200456ac72 integer arith 2021-05-24 17:58:11 +03:00
dzaima
8cfa3e7f55 builtin initialization in load.c 2021-05-24 14:41:10 +03:00
dzaima
cc36fd0d7c assert partial HArrs are finished 2021-05-24 13:18:10 +03:00
dzaima
6b4c5913ff RT_VERIFY 2021-05-24 01:05:34 +03:00
dzaima
c23214a4de add extern to globals 2021-05-24 00:13:49 +03:00
dzaima
b2b826be9b incremental compilation 2021-05-23 21:55:49 +03:00