New declosure impl

This commit is contained in:
UditDey
2026-09-13 10:31:13 +00:00
parent d026165e7a
commit 61c4971fa6
5 changed files with 217 additions and 15 deletions
+4 -6
View File
@@ -1,3 +1,4 @@
mod declosure;
mod flatten;
mod infer;
mod libqjs;
@@ -6,6 +7,7 @@ mod regify;
use std::fs::File;
use std::io::Read;
use declosure::declosure;
use flatten::flatten;
use infer::infer_types;
use regify::regify;
@@ -26,12 +28,8 @@ fn main() {
let binary = libqjs::compile(&src, filename);
// Process it
let (flat_fns, atoms) = flatten(binary);
let (flat_fns, captures, atoms) = flatten(binary);
let flat_fns = declosure(flat_fns, &captures);
let reg_fns = regify(flat_fns);
println!("{reg_fns:#?}");
println!("{atoms:#?}");
let type_cache = infer_types(&reg_fns, &atoms);
println!("{type_cache:#?}");
}