aboutsummaryrefslogtreecommitdiffstats
Commit message (Expand)AuthorAgeFilesLines
* 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-232-19/+25
* 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-223-7/+161
* Fix local variables on recursive callsBad Diode2021-11-171-8/+26
* Add tail call optimization for function callsBad Diode2021-11-161-30/+52
* Move ret pointer before closed vars in proc callsBad Diode2021-11-161-6/+14
* Replace `call` with `jmp` in preparation for TCOBad Diode2021-11-161-3/+8
* Add proper function calls with closed variablesBad Diode2021-11-161-12/+43
* Add workaround for `void` return in function callsBad Diode2021-11-151-3/+11
* Add initial boilerplate for closure captureBad Diode2021-11-153-5/+48
* Fix stack on procedure call returnBad Diode2021-11-153-24/+65
* Fix bug on parameter detection for named functionsBad Diode2021-11-102-4/+9
* Add support for accessing procedure parametersBad Diode2021-11-103-8/+38
* Add locals for lambda proceduresBad Diode2021-11-101-3/+9
* Add initial local definition/accessBad Diode2021-11-103-7/+39
* Change Environment to store locals in arrayBad Diode2021-11-104-25/+42
* Add support for args in function callsBad Diode2021-11-101-2/+22
* Add display functionality for lambda objectsBad Diode2021-11-092-7/+28
* Add initial procedure calls for lambdasBad Diode2021-11-092-11/+36
* Add compilation contextBad Diode2021-11-092-149/+204
* Add support for compiling string literalsBad Diode2021-11-093-30/+128
* Change heap register to `r15` from `rsi` to avoid conflictsBad Diode2021-11-042-60/+64
* Add `cons`, `car` and `cdr` primitivesBad Diode2021-11-044-8/+76
* Add `if` compilationBad Diode2021-11-031-0/+22
* Fix behaviour of numerical comparisonsBad Diode2021-11-031-29/+19
* Fix behaviour of logic comparisonsBad Diode2021-11-031-41/+55
* Add a function to generate labelsBad Diode2021-11-021-0/+13
* Add numerical comparison operations (binary only)Bad Diode2021-11-021-10/+58
* Add `and` / `or` primitive proceduresBad Diode2021-11-021-15/+37
* Add `not` primitive procedureBad Diode2021-11-021-60/+93
* Add compilation of `display` primitiveBad Diode2021-11-024-32/+44
* Add type predicate primitive proceduresBad Diode2021-11-012-23/+88
* Add support for immediate constantsBad Diode2021-11-013-53/+143
* Add x86_64 compilation for arithmetic expressionsv0.10Bad Diode2021-11-016-2/+191
* Add protection for buffer overflow of tokensBad Diode2021-10-311-6/+6
* Add a couple of EOF checksBad Diode2021-10-311-0/+29