Commit Graph

58 Commits

Author SHA1 Message Date
0fd846e844 feat: builtins env (WIP) 2025-06-06 09:48:03 +08:00
484cfa4610 feat: get rid of gc and cyclic thunk 2025-06-05 16:46:43 +08:00
51f8df9cca feat: less gc (WIP) 2025-06-02 14:19:06 +08:00
d3442e87e7 feat(gc): WIP 2025-06-02 12:00:38 +08:00
20b2b6f1ef feat: lookup at downgrade time
works, but leaks memory
2025-06-01 09:20:04 +08:00
7d6168fdae feat: ir env (WIP) 2025-05-30 18:29:09 +08:00
c8276c1729 chore: cargo clippy 2025-05-28 22:47:35 +08:00
f3bf44ab97 chore: cargo fmt 2025-05-28 21:59:45 +08:00
99dce2e778 feat: gc-arena
finally...
2025-05-28 21:52:13 +08:00
c3ace28af1 feat: gc (does compile, but WIP) 2025-05-27 21:08:59 +08:00
319c12c1f4 fix(vm): lifetime (still does not compile) 2025-05-25 17:28:33 +08:00
cc06369c5e feat: gc-arena (WIP, does not compile) 2025-05-25 17:18:54 +08:00
b41fd38bcc feat(env): move env out of vm, 2025-05-24 09:28:59 +08:00
a47a08b051 feat: bumpalo 2025-05-23 12:09:53 +08:00
53cbb37b00 optimize: make all call single arg
to allow more aggressive optimization
2025-05-23 09:21:40 +08:00
f380e5fd70 optimize(value): less clone 2025-05-22 21:24:19 +08:00
6bb86ca2cf chore: cargo clippy 2025-05-22 19:22:38 +08:00
c898b577b0 feat: less env clone 2025-05-22 19:21:14 +08:00
2a19ddb279 feat: no clone in JIT
IMPORTANT: should not drop or create values in JIT anymore
2025-05-21 20:48:56 +08:00
177acfabcf feat: generalize env 2025-05-21 09:33:43 +08:00
736402dc53 chore: cargo fmt 2025-05-20 18:30:24 +08:00
d0298ce2a6 optimize(env): single arg 2025-05-20 09:47:30 +08:00
9e172bf013 feat(jit): fib! 2025-05-19 19:29:25 +08:00
6d26716412 chore: cargo fmt 2025-05-19 11:33:18 +08:00
af5a312e1e feat(jit): fix segfault 2025-05-18 17:07:49 +08:00
f98d623c13 feat: JIT (unusable, segfault) 2025-05-18 15:02:02 +08:00
29e959894d feat: JIT (WIP) 2025-05-17 22:38:05 +08:00
95ebddf272 feat: JIT (WIP) 2025-05-17 20:54:36 +08:00
c3d365d486 chore: cargo fmt 2025-05-17 20:08:16 +08:00
ec61eaa140 feat: hashmap with_capacity 2025-05-17 20:04:12 +08:00
7b55a15281 feat: use hashbrown 2025-05-17 19:46:45 +08:00
fb14027845 feat(env): Rc 2025-05-17 19:10:10 +08:00
ff9afd0cc1 feat: better builtins implementaion
get rid of circular references
2025-05-17 18:31:36 +08:00
8480e0891b feat(value): less clone 2025-05-17 15:18:16 +08:00
85f06a30cd feat: JIT (WIP) 2025-05-17 12:18:09 +08:00
15df7e55c9 optimize: always inline single_op 2025-05-16 14:33:58 +08:00
ed28efb623 feat: error handling (WIP) 2025-05-15 19:44:38 +08:00
1e50322af0 optimize: dedup consts 2025-05-15 19:11:34 +08:00
864be73e77 feat: less clone on symbol 2025-05-15 18:19:16 +08:00
3e7a8a1c05 feat: generalize Stack 2025-05-15 11:20:59 +08:00
2293b9e2de fix: thunk & function 2025-05-15 11:11:11 +08:00
d664d433dc feat: JIT (WIP) 2025-05-11 14:57:05 +08:00
cfed44ebf4 chore: fmt 2025-05-11 13:49:44 +08:00
05e82d4021 feat: lots of optimization
* allocate vm stack on the stack
* use Rc instead of Arc
* optimize recursive attribute set
2025-05-11 12:57:29 +08:00
be0c416c13 feat: comment 2025-05-11 10:25:08 +08:00
7cbb082dc4 feat: ref 2025-05-11 10:19:55 +08:00
12aa654935 feat: error handling (partial) 2025-05-11 08:17:01 +08:00
f52687bc1e feat: ref 2025-05-11 00:32:44 +08:00
561b9bf36a chore: tidy 2025-05-10 21:31:38 +08:00
14045f7924 feat: stash 2025-05-08 16:58:22 +08:00