samrushing/irken-compiler

let-values: combine with normal let syntax.

samrushing opened this issue · 0 comments

Today, it is not possible to freely mix normal and multiple-value let bindings, because of the last match in the let macro, which translates to let-splat. The problem is that this last match cannot see multiple-value binds further down the binding list.

I think the right approach here might be to cascade/embed every single let binding, and rely on the opt phase to recombine them when possible. Then, just remove the let-splat renaming altogether.