this is being rewritten in rust here: https://github.com/05st/fino i would love to use haskell for it but unfortunately the state of llvm libraries for haskell is completely atrocious
a functional programming language.
todo:
- Syntax, tokenization, parsing
- Basic module system
- Module verification (topological sort, detect cycles)
- Name resolution
- User-defined prefix, infix, and postfix operators
- Function call analysis (find strongly connected components and topological sort)
- Hindley-Milner type inference
- Algebraic data types
- Records with scoped labels
- Traits (i.e. Haskell typeclasses)
- Monomorphization
- Closure conversion / lambda lifting
- Code generation (C probably)
- ...