aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Make distinction between sym parameter and variablesBad Diode2022-04-192-1/+9
|
* Fix semantic analysis bug in block scoped functionsBad Diode2022-04-192-1/+4
|
* Add viz for symbol tablesBad Diode2022-04-193-21/+94
|
* Add cmd options for viz of different compile stagesBad Diode2022-04-181-5/+34
|
* Move semantic analysis to separate fileBad Diode2022-04-187-548/+545
|
* Add a more rich symbol table value and typecheck funcall argsBad Diode2022-04-183-31/+100
|
* Refactor to remove redundant symbol_check functionBad Diode2022-04-183-212/+99
|
* Add funcall node type and fix type resolution bugsBad Diode2022-04-115-12/+116
|
* Add more type rules and numeric type coercionBad Diode2022-04-093-20/+167
|
* Add rudimentary type checkingBad Diode2022-04-087-57/+212
|
* Add initial implementation of AST vizualizationBad Diode2022-04-086-40/+196
|
* Add initial implementation of typeclass resolutionBad Diode2022-04-073-5/+94
|
* Add scope pointer to blocks and functionsBad Diode2022-04-063-7/+5
|
* Add hashing function for symbolsBad Diode2022-04-061-3/+5
|
* Add initial implementation of symbol checkingBad Diode2022-04-066-21/+221
|
* Prepare parse tree for returnBad Diode2022-04-062-8/+25
|
* Add TODO.md file to keep track of open tasksBad Diode2022-04-062-25/+3
|
* Add parsing of if statementsBad Diode2022-04-065-2/+86
|
* Add NODE_BLOCK for scoped expressionsBad Diode2022-04-063-25/+43
|
* Add parsing for function definitionsBad Diode2022-04-035-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 ...) statementsBad Diode2022-04-034-1/+47
|
* Add type signature to def statementsBad Diode2022-03-315-103/+121
| | | | Currently mandatory, may be optional once we have type inference.
* Minor styling changesBad Diode2022-03-302-28/+11
|
* Add initial parsing of variable definitionsBad Diode2022-03-304-5/+72
|
* Add support for logic builtins and boolsBad Diode2022-03-304-1/+38
|
* Add parsing for builtin arithmetic opsBad Diode2022-03-306-15/+84
|
* Use Node refs as return arguments from parsingBad Diode2022-03-302-30/+49
|
* Make unknown printing explicitBad Diode2022-03-261-3/+1
|
* Add number parsingBad Diode2022-03-125-93/+101
|
* Add boilerplate for parserBad Diode2022-02-124-1075/+154
|
* Make keywords a static array for ease of lexBad Diode2022-02-122-29/+36
|
* Ensure EOF is handled properlyBad Diode2022-02-011-9/+4
|
* Add new syntax to lexer and prepare refactorBad Diode2022-02-0151-5804/+237
|
* Add support for captured loads inside lambdasirBad Diode2022-01-092-13/+13
|
* Add `compile_symbol` for irBad Diode2022-01-091-31/+82
|
* Add some comments for laterBad Diode2022-01-032-1/+16
|
* Ensure new procedures are compiled only onceBad Diode2021-12-302-2/+51
|
* Add WIP compilation of lambdasBad Diode2021-12-301-57/+116
|
* Add `def` builtin and local var load/store opsBad Diode2021-12-301-4/+40
|
* Fix warnings on macosBad Diode2021-12-231-18/+24
|
* Add `if` compilation for irBad Diode2021-12-231-4/+24
|
* Add compilation of numerical comparison ops for irBad Diode2021-12-231-0/+69
|
* Add compilation of `or` builtin for the irBad Diode2021-12-231-1/+15
|
* Add `not` and `and` builtins for ir compilationBad Diode2021-12-232-13/+89
|
* Add print to ir compilationBad Diode2021-12-221-0/+14
|
* Fix typo in enum nameBad Diode2021-12-222-8/+8
|
* Integrate builtin text into objectsBad Diode2021-12-222-45/+35
|
* Add builtin object typeBad Diode2021-12-223-38/+108
|
* Add IR generation for arithmetic opsBad Diode2021-12-221-2/+43
|
* Start refactoring of compiler to stack-irBad Diode2021-12-222-2/+159
|