index
:
bdl
dev
ir
main
Bad Diode's Lisp. Experiments with interpreters, compilers and VMs
about
summary
refs
log
tree
commit
diff
stats
log msg
author
committer
range
path:
root
/
src
/
main.c
Commit message (
Expand
)
Author
Age
Files
Lines
*
Change typechecking to be independent of the symbolic checking
Bad Diode
2024-06-23
1
-46
/
+112
*
Add more expressions to type inference method
Bad Diode
2024-06-23
1
-25
/
+101
*
Implement basic type inference for numbers and symbols
Bad Diode
2024-06-23
1
-28
/
+48
*
Start basic type checking/inference
Bad Diode
2024-06-23
1
-122
/
+89
*
Add constrain to let parsing either type or value must be present
Bad Diode
2024-06-23
1
-1
/
+1
*
Start implementing the typechecker
Bad Diode
2024-06-21
1
-6
/
+154
*
Remove old files no longer needed as reference
Bad Diode
2024-06-21
1
-6
/
+89
*
Add semantic duplication check for enum fields
Bad Diode
2024-06-21
1
-8
/
+16
*
Add semantic checking for enum constructs
Bad Diode
2024-06-21
1
-10
/
+46
*
Fix scope allocation bug (non zero!)
Bad Diode
2024-06-21
1
-3
/
+6
*
Add scope pointer to AST nodes
Bad Diode
2024-06-21
1
-1
/
+3
*
Remove unnecessary scope creation.
Bad Diode
2024-06-21
1
-32
/
+59
*
Add a basic symbol checker
Bad Diode
2024-06-21
1
-13
/
+271
*
Add a couple of macros for ergonomic set/map creation
Bad Diode
2024-06-20
1
-0
/
+12
*
Move vm/chunk compiler to separate file
Bad Diode
2024-06-20
1
-404
/
+40
*
Add temp result printing after OP_HALT
Bad Diode
2024-06-19
1
-4
/
+22
*
Add proper LD instruction to lit int value type
Bad Diode
2024-06-19
1
-28
/
+81
*
Add a bunch of op types to the VM
Bad Diode
2024-06-19
1
-48
/
+188
*
Implement the worlds worst register machine
Bad Diode
2024-06-19
1
-31
/
+96
*
Add barebones stack vm
Bad Diode
2024-06-19
1
-2
/
+126
*
Move parser to its own file
Bad Diode
2024-06-19
1
-977
/
+1
*
Change a few syntax constructs for consistency
Bad Diode
2024-06-19
1
-4
/
+12
*
Add basic while loop
Bad Diode
2024-06-18
1
-1
/
+20
*
Add `tests` target to makefile
Bad Diode
2024-06-18
1
-3
/
+15
*
Add `cond` conditionals
Bad Diode
2024-06-18
1
-0
/
+23
*
Add enum parsing
Bad Diode
2024-06-18
1
-9
/
+46
*
Fix some syntax issues with match cases
Bad Diode
2024-06-18
1
-5
/
+7
*
Add parsing for match-case statements
Bad Diode
2024-06-18
1
-4
/
+55
*
Add parsing support for basic conditionals and blocks
Bad Diode
2024-06-18
1
-1
/
+55
*
Fix a corner case with symbol indexing
Bad Diode
2024-06-18
1
-2
/
+11
*
Add char 'c' literals
Bad Diode
2024-06-18
1
-5
/
+13
*
Add pointers
Bad Diode
2024-06-18
1
-19
/
+35
*
Add array types and array symbol access
Bad Diode
2024-06-18
1
-6
/
+30
*
Add struct literals
Bad Diode
2024-06-18
1
-34
/
+33
*
Add let, set and struct definitions
Bad Diode
2024-06-18
1
-190
/
+219
*
Add let/set/struct parsing
Bad Diode
2024-06-17
1
-48
/
+288
*
Add support for parsing long long unsigned integers if using hex
Bad Diode
2024-06-16
1
-2
/
+12
*
Adding basic strings and symbols parsing
Bad Diode
2024-06-16
1
-0
/
+37
*
Add bitwise parsing operations
Bad Diode
2024-06-16
1
-6
/
+39
*
Add parsing for logical operators
Bad Diode
2024-06-16
1
-12
/
+87
*
Add floating point number parsing
Bad Diode
2024-06-16
1
-13
/
+32
*
Remove redundant function name and update precedence naming
Bad Diode
2024-06-16
1
-15
/
+9
*
Update clang-format and cland options
Bad Diode
2024-06-16
1
-71
/
+17
*
Add graphviz visualization for the parse tree
Bad Diode
2024-06-16
1
-30
/
+219
*
Setup initial Pratt parser
Bad Diode
2024-06-16
1
-5
/
+187
*
Move lexer code to lexer.c file
Bad Diode
2024-06-15
1
-619
/
+12
*
Finish basic lexing
Bad Diode
2024-06-15
1
-56
/
+107
*
Add better numeric lexing
Bad Diode
2024-06-15
1
-17
/
+61
*
Add many scanning functions
Bad Diode
2024-06-15
1
-43
/
+301
*
Add initial scanner functions
Bad Diode
2024-06-15
1
-25
/
+271
[next]