Get the latest tech news
The Q Programming Language
🌱 A minimal programming language and compiler.
High performance ( ssa and asm optimizations) Fast compilation (<100 μs for simple programs) Tiny executables ("Hello World" is ~600 bytes) Multiple platforms (Linux, Mac and Windows) Zero dependencies (no llvm, no libc) arm- arm64 architecture asm- Generic assembler ast- Abstract syntax tree cli- Command line interface codegen- SSA to assembly code generation compiler- Compiler frontend config- Build configuration core- Defines Function and compiles tokens to SSA cpu- Types to represent a generic CPU data- Data container that can re-use existing data dll- DLL support for Windows systems elf- ELF format for Linux executables errors- Error handling that reports lines and columns exe- Generic executable format to calculate section offsets expression- Expression parser generating trees fs- File system access global- Global variables like the working directory linker- Frontend for generating executable files macho- Mach-O format for Mac executables memfile- Memory backed file descriptors pe- PE format for Windows executables scanner- Scanner that parses top-level instructions set- Generic set implementation sizeof- Calculates the byte size of numbers ssa- Static single assignment types token- Tokenizer types- Type system verbose- Verbose output x86- x86-64 architecture In practice, however, it's not as bad as it sounds because the padding is a zero-filled area that barely consumes any disk space in sparse files.
Or read this on Hacker News