Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Make distinction between sym parameter and variables | Bad Diode | 2022-04-19 | 2 | -1/+9 |
| | |||||
* | Fix semantic analysis bug in block scoped functions | Bad Diode | 2022-04-19 | 2 | -1/+4 |
| | |||||
* | Add viz for symbol tables | Bad Diode | 2022-04-19 | 4 | -21/+97 |
| | |||||
* | Add cmd options for viz of different compile stages | Bad Diode | 2022-04-18 | 2 | -7/+42 |
| | |||||
* | Move semantic analysis to separate file | Bad Diode | 2022-04-18 | 7 | -548/+545 |
| | |||||
* | Add a more rich symbol table value and typecheck funcall args | Bad Diode | 2022-04-18 | 3 | -31/+100 |
| | |||||
* | Refactor to remove redundant symbol_check function | Bad Diode | 2022-04-18 | 3 | -212/+99 |
| | |||||
* | Add funcall node type and fix type resolution bugs | Bad Diode | 2022-04-11 | 5 | -12/+116 |
| | |||||
* | Add more type rules and numeric type coercion | Bad Diode | 2022-04-09 | 4 | -20/+170 |
| | |||||
* | Add rudimentary type checking | Bad Diode | 2022-04-08 | 8 | -58/+214 |
| | |||||
* | Add initial implementation of AST vizualization | Bad Diode | 2022-04-08 | 8 | -51/+205 |
| | |||||
* | Add initial implementation of typeclass resolution | Bad Diode | 2022-04-07 | 3 | -5/+94 |
| | |||||
* | Add scope pointer to blocks and functions | Bad Diode | 2022-04-06 | 3 | -7/+5 |
| | |||||
* | Add hashing function for symbols | Bad Diode | 2022-04-06 | 1 | -3/+5 |
| | |||||
* | Add initial implementation of symbol checking | Bad Diode | 2022-04-06 | 6 | -21/+221 |
| | |||||
* | Prepare parse tree for return | Bad Diode | 2022-04-06 | 2 | -8/+25 |
| | |||||
* | Add TODO.md file to keep track of open tasks | Bad Diode | 2022-04-06 | 3 | -25/+16 |
| | |||||
* | Add parsing of if statements | Bad Diode | 2022-04-06 | 5 | -2/+86 |
| | |||||
* | Add NODE_BLOCK for scoped expressions | Bad Diode | 2022-04-06 | 3 | -25/+43 |
| | |||||
* | Add parsing for function definitions | Bad Diode | 2022-04-03 | 5 | -27/+180 |
| | | | | | | | | | | | | This commits also changes the structure of some existing functions. Namely, parse_* functions other than parse_next check that the type of the token to parse is correct. This allow us to use them directly in the rest of the code to consume tokens and properly produce an error if the token type is not the expected one. In the same fashion, two new functions consume_lparen and consume_rparen are implemented. They only report true/false and report errors if something went wrong. | ||||
* | Add parsing for (set ...) statements | Bad Diode | 2022-04-03 | 4 | -1/+47 |
| | |||||
* | Add type signature to def statements | Bad Diode | 2022-03-31 | 5 | -103/+121 |
| | | | | Currently mandatory, may be optional once we have type inference. | ||||
* | Minor styling changes | Bad Diode | 2022-03-30 | 2 | -28/+11 |
| | |||||
* | Add initial parsing of variable definitions | Bad Diode | 2022-03-30 | 4 | -5/+72 |
| | |||||
* | Add support for logic builtins and bools | Bad Diode | 2022-03-30 | 4 | -1/+38 |
| | |||||
* | Add parsing for builtin arithmetic ops | Bad Diode | 2022-03-30 | 6 | -15/+84 |
| | |||||
* | Use Node refs as return arguments from parsing | Bad Diode | 2022-03-30 | 2 | -30/+49 |
| | |||||
* | Make unknown printing explicit | Bad Diode | 2022-03-26 | 1 | -3/+1 |
| | |||||
* | Add number parsing | Bad Diode | 2022-03-12 | 5 | -93/+101 |
| | |||||
* | Add boilerplate for parser | Bad Diode | 2022-02-12 | 4 | -1075/+154 |
| | |||||
* | Make keywords a static array for ease of lex | Bad Diode | 2022-02-12 | 2 | -29/+36 |
| | |||||
* | Ensure EOF is handled properly | Bad Diode | 2022-02-01 | 2 | -62/+42 |
| | |||||
* | Add new syntax to lexer and prepare refactor | Bad Diode | 2022-02-01 | 54 | -5809/+299 |
| | |||||
* | Add support for captured loads inside lambdasir | Bad Diode | 2022-01-09 | 2 | -13/+13 |
| | |||||
* | Add `compile_symbol` for ir | Bad Diode | 2022-01-09 | 1 | -31/+82 |
| | |||||
* | Add some comments for later | Bad Diode | 2022-01-03 | 2 | -1/+16 |
| | |||||
* | Ensure new procedures are compiled only once | Bad Diode | 2021-12-30 | 2 | -2/+51 |
| | |||||
* | Add WIP compilation of lambdas | Bad Diode | 2021-12-30 | 1 | -57/+116 |
| | |||||
* | Add `def` builtin and local var load/store ops | Bad Diode | 2021-12-30 | 1 | -4/+40 |
| | |||||
* | Fix warnings on macos | Bad Diode | 2021-12-23 | 2 | -19/+25 |
| | |||||
* | Add `if` compilation for ir | Bad Diode | 2021-12-23 | 1 | -4/+24 |
| | |||||
* | Add compilation of numerical comparison ops for ir | Bad Diode | 2021-12-23 | 1 | -0/+69 |
| | |||||
* | Add compilation of `or` builtin for the ir | Bad Diode | 2021-12-23 | 1 | -1/+15 |
| | |||||
* | Add `not` and `and` builtins for ir compilation | Bad Diode | 2021-12-23 | 2 | -13/+89 |
| | |||||
* | Add print to ir compilation | Bad Diode | 2021-12-22 | 1 | -0/+14 |
| | |||||
* | Fix typo in enum name | Bad Diode | 2021-12-22 | 2 | -8/+8 |
| | |||||
* | Integrate builtin text into objects | Bad Diode | 2021-12-22 | 2 | -45/+35 |
| | |||||
* | Add builtin object type | Bad Diode | 2021-12-22 | 3 | -38/+108 |
| | |||||
* | Add IR generation for arithmetic ops | Bad Diode | 2021-12-22 | 1 | -2/+43 |
| | |||||
* | Start refactoring of compiler to stack-ir | Bad Diode | 2021-12-22 | 3 | -7/+161 |
| |