About Intlang

Intlang is was really only supposed to be a parser for a basic lambda calculus. But step by setup it grew, first a typechecker, includes and an interpreter. Then a naive lowering to llvm and all of a sudden it now has an MIR with a borrowing system and a number of optimizations. The language itself also grew a lot (tuples, vectors, ... ).

In the beginning I had even planed to avoid if statements, arguing that one could just write (x>0)*1 + (x<=0)*2 instead of if x > 0 then 1 else 2 end... great idea btw, not. This is also really the only reason I called it intlang since the plan was to well only have int and function types.

Well I had lots of fun building it and maybe from time to time I may come back and add/improve some things :)

The compiler can be found at: https://github.com/simonandreashuber/intlang