Added desugar steps to add (begin) wrappers around long lambda bodies, and rewrite internal (define) forms into letrec forms

This commit is contained in:
2025-12-26 22:13:30 +03:00
parent 4f1ad54596
commit be0d479665
2 changed files with 33 additions and 8 deletions

View File

@@ -21,7 +21,7 @@ and dbg_print_start = function
let def = Parser.parse_str "(define (f x) (+ x 1))
(define (f)
(define (g y) (* y 2))
(g 5))";;
(g 5) (g 6))";;
let desugared = List.map Compiler.Sugar.desugar def
let () = List.iter (fun x -> Printf.printf "%s\n" (dbg_print_start x) ) desugared
let () = print_newline ()