Age | Commit message (Collapse) | Author | |
---|---|---|---|
2025-01-29 | Update README and version # to reflect binary numbersHEADmaster | bd | |
2025-01-29 | Add emission procedures for binary ops, fix unary parsing error | bd | |
2025-01-29 | Add fixup rules new binary operators | bd | |
2025-01-29 | Modify assembly pass to expand new binary operators | bd | |
2025-01-29 | tacky generation for binary operations | bd | |
2025-01-29 | Add new tokens for binary operations to IR | bd | |
2025-01-28 | Fix namespace issues related to IR symbols | bd | |
2025-01-28 | Simplified declaring new IR nodes in (backend ast ir) | bd | |
2025-01-28 | Minor cleanup to main ull driver | bd | |
2025-01-28 | Fix various lexer/parser bugs, pass all tests for binary ops | bd | |
2025-01-28 | [Ongoing] Rewrite frontend to use Flex/Bison | bd | |
This is a merge of another experiment, so the changes are large: - separated "modules" directory into frontend/backend - adjusted module names and moved files for this to happen - removed modules lexer & parser - removed all the unit tests (most were outdated) - added Bison, flex, and C development tools to manifest.scm - added lexer.l, a source file used by the flex utility with a functioning lexing implementation - added parser.y, a source file used by the bison utility with a functioning parser implementation - added node.c and node.h, which parser.y uses to construct an AST of a C source file (up to binary ops) - added driver.c, a Guile-C interface that provides a module to scheme programs - added a Makefile to make all of this - added stuff to .gitignore | |||
2025-01-28 | Rename gscc to 'ull' | bd | |
2025-01-18 | Add lexer support for add, mul, div, and mod | bd | |
2025-01-18 | Complete full translation for unary operators | bd | |
2025-01-18 | set modules folder to modules path | bd | |
2025-01-18 | Add new emitter files for code generation | bd | |
2025-01-18 | use a scheme procedures+eval to manage and transform AST | bd | |
Removes records for a more-managable scheme-syntax approach. Modules+overriding allows for the IR itself to be represented and evaluated as scheme code during each transformation. | |||
2025-01-18 | Remove unused files | bd | |
2025-01-12 | Expansion of complex expressions into set of instructions | bd | |
2025-01-12 | *** empty log message *** | bd | |
2025-01-04 | Modify parser to handle unary operators | bd | |
2024-12-31 | bump version number | bd | |
2024-12-31 | Add (and test) sub, add, inc/decrement, and bit-complement to lexer | bd | |
2024-12-30 | fix whitespace in lexer | bd | |
2024-12-30 | Implement assembly emission, allowing execution of trivial programs | bd | |
Rewrite preprocess to return an input port rather than a temporary file. | |||
2024-12-28 | Assembly generation for trivial programs | bd | |
2024-11-05 | Add parser and ast generation for trivial programs | bd | |
2024-11-04 | Add keywords to lexer | bd | |
2024-11-04 | setup parser, clean up lexer tests | bd | |
2024-11-04 | Basic lexer with unit tests | bd | |
2024-11-04 | Add modules, open port for reading | bd | |
2024-11-04 | initial compiler driver | bd | |