This internship project seeks to integrate the tail call proposal in the WebAssembly (wasm) backend in the Kotlin compiler. The intern would be responsible for the design and implementation of the proposal for Kotlin/Wasm and for benchmarking/measurements of the proposal to evaluate its worthwhileness, as well as its impact on debuggability. Potential positive results would be faster performance, better stack memory usage, and smaller code.
The intern should be generally familiar with how interpreters and compilers work, and be able to derive satisfication from optimizations and benchmarking improvements.