x86-64 compiler written on C from scratch as hobby project (without flex, bison and other tools)
Targets Linux platform only, uses GNU toolchain to compile itself, and for compiling programs on this language.
There are not user-friendly interface yet, this project mostly serves as educational purpose.
── almc
├── back-end
│ └── x86_64 (nasm)
│ ├── ir (not fully impl yet)
│ └── gen (not fully impl yet)
└── front-end
├── syntactic analysis
│ ├── lexer (NFA)
│ ├── parser (recursive descent)
│ └── ast structure n evaluator
├── semantic analysis
│ ├── symbol table
│ ├── ast-resolver
│ └── type-resolver
└── utils
├── os
├── memory (libc wrappers)
└── data structures (stretchy buffers)
- Initializers suport
- x86-64 back-end
- Minimal standart library
Compiled with gcc 9.4.0
This project was released under MIT license.