Commit Graph

67 Commits

Author SHA1 Message Date
d875951c09 feat: less clone, avoid evaluating not depended thunk 2025-06-18 09:32:00 +08:00
3e9f0a72a0 chore: cargo fmt 2025-06-17 11:59:53 +08:00
7f6848c9e5 feat: SCC analysis (thunk capture WIP) 2025-06-17 11:53:54 +08:00
49255948ff feat: at least it compiles, right? 2025-06-12 20:12:31 +08:00
7293cb9f75 feat: initial parallel impl 2025-06-08 17:27:43 +08:00
3797544fc2 chore: cleanup 2025-06-08 00:59:31 +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
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
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
9b3c3d6fe9 chore: cargo clippy 2025-05-20 18:39:09 +08:00
736402dc53 chore: cargo fmt 2025-05-20 18:30:24 +08:00
96fb6033a4 fix(builtins): should not appear in public value 2025-05-20 10:00:50 +08:00
d0298ce2a6 optimize(env): single arg 2025-05-20 09:47:30 +08:00
b4db46d48a chore: cargo fmt 2025-05-19 19:40:26 +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
e17c48f2d9 fix: builtins impl 2025-05-19 08:37:40 +08:00
4124156d52 feat(jit): lookup 2025-05-18 21:52:36 +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
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
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
7cbb082dc4 feat: ref 2025-05-11 10:19:55 +08:00