coalton-lang / coalton

Coalton is an efficient, statically typed functional programming language that supercharges Common Lisp.
https://coalton-lang.github.io/
MIT License
1.12k stars 67 forks source link

Implement inlining with basic syntactic heuristics #1193

Closed amorphedstar closed 1 month ago

amorphedstar commented 1 month ago

This PR implements an inlining pass based on the work of @digikar99 ( https://github.com/coalton-lang/coalton/pull/1029 ). The updated traverse is used to allow passing a call stack, which enables separate bounds on recursive function unrolling and inlining depth. Heuristics are assumed to be simple syntactic functions of a function body for now.

stylewarning commented 1 month ago

We should add @digikar99 as git commit co-author.