summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
4 daysc/lex: mostly functional lexerHEADmasterThomas Bracht Laumann Jespersen
7 daysc/lex: lexing identifiers and keywordsThomas Bracht Laumann Jespersen
7 daysc: lex single keyword/identifierThomas Bracht Laumann Jespersen
8 daysc: work on lexing single tokensThomas Bracht Laumann Jespersen
9 daysc: flesh out tokens and lexerThomas Bracht Laumann Jespersen
10 daysc: parse argumentsThomas Bracht Laumann Jespersen
10 daysmain: start work on arg parsingThomas Bracht Laumann Jespersen
10 daysuse /* .. */ for comments, and C17Thomas Bracht Laumann Jespersen
10 daysc: nascent C implementationThomas Bracht Laumann Jespersen
12 dayslc/tacky: Option.map + Option.value = Option.foldThomas Bracht Laumann Jespersen
13 dayslc/tacky: fix tackygen for static storage variablesThomas Bracht Laumann Jespersen
14 daystests: add more testsThomas Bracht Laumann Jespersen
14 dayslc: codegen + emitThomas Bracht Laumann Jespersen
2025-01-22lc/tacky: generate TACKY from AST and symbol tableThomas Bracht Laumann Jespersen
2025-01-21lc/typecheck: finalize typechecking of static/extern functions/variablesThomas Bracht Laumann Jespersen
2025-01-20lc: semantic analysis plus initial typechecking static/externThomas Bracht Laumann Jespersen
2025-01-17tests: remove comment from fibThomas Bracht Laumann Jespersen
2025-01-17driver: use if, not matchThomas Bracht Laumann Jespersen
2025-01-16lc/parse: parse storage classes, and top-level variable declarationsThomas Bracht Laumann Jespersen
2025-01-16lc/ast: define static/extern, support toplevel var declsThomas Bracht Laumann Jespersen
2025-01-15lc/lex: add "extern" and "static" keywordsThomas Bracht Laumann Jespersen
2025-01-05lc: minor changes in codegen and emitThomas Bracht Laumann Jespersen
2025-01-04tests: add more test programsThomas Bracht Laumann Jespersen
2025-01-04lc/emit: emit function callsThomas Bracht Laumann Jespersen
2025-01-03lc/codegen: gen functions and function callsThomas Bracht Laumann Jespersen
2024-12-31lc/tacky: generate TACKY for fun defs and fun callsThomas Bracht Laumann Jespersen
2024-12-31lc/typecheck: new module, do rudimentary typecheckingThomas Bracht Laumann Jespersen
2024-12-30lc/parse: track function decls and reject duplicatesThomas Bracht Laumann Jespersen
2024-12-28lc/parse: parse function calls with argumentsThomas Bracht Laumann Jespersen
2024-12-26lc/parse: parse multiple function declarationThomas Bracht Laumann Jespersen
2024-12-23lc: adjust AST to support function decls and callsThomas Bracht Laumann Jespersen
2024-12-20lc/semanticanalysis: simplify labeling with loops and switchThomas Bracht Laumann Jespersen
2024-12-20lc/semanticanalysis: remove some print debuggingThomas Bracht Laumann Jespersen
2024-12-20lc/bin: only print lexed tokens when stage == LexThomas Bracht Laumann Jespersen
2024-12-20driver: support -cThomas Bracht Laumann Jespersen
2024-12-20lc/tacky: gen TACKY for switch, case, and defaultThomas Bracht Laumann Jespersen
2024-12-20lc: parse and validate switch statementsThomas Bracht Laumann Jespersen
2024-12-14lc/tacky: generate TACKY for loopsThomas Bracht Laumann Jespersen
2024-12-11lc/semanticanalysis: finish loop labelingThomas Bracht Laumann Jespersen
2024-12-11lc/parse+semanticanalysis: parsing and label mapping doneThomas Bracht Laumann Jespersen
2024-12-10lc/parse: parse all looping constructsThomas Bracht Laumann Jespersen
2024-12-10lc/lex: lex do, for, while, break and continueThomas Bracht Laumann Jespersen
2024-12-09lc/semanticanalysis: use bindThomas Bracht Laumann Jespersen
2024-12-09lc/ast: adjust AST pretty-printingThomas Bracht Laumann Jespersen
2024-12-09lc/semanticanalysis: introduce transpose for option resultThomas Bracht Laumann Jespersen
2024-12-09lc/semanticanalysis: minor changesThomas Bracht Laumann Jespersen
2024-12-09lc/semanticanalysis: compress some linesThomas Bracht Laumann Jespersen
2024-12-09lc: complete chapter 7, supporting compound statementsThomas Bracht Laumann Jespersen
2024-12-07lc/semanticanalysis: pull out some shared functionalityThomas Bracht Laumann Jespersen
2024-12-07lc: add semantic analysis stageThomas Bracht Laumann Jespersen