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
Commit message (
Expand
)
Author
Age
Files
Lines
...
*
Remove parenthesis requirement from match, while, if
Bad Diode
8 days
3
-23
/
+11
*
Add struct literals typechecking
Bad Diode
8 days
4
-59
/
+106
*
Change grammar for struct literals
Bad Diode
9 days
2
-42
/
+44
*
Fix set typechecking
Bad Diode
9 days
2
-4
/
+14
*
Add typechecking for structs and struct fields
Bad Diode
9 days
2
-8
/
+105
*
Add field accessor for typechecking enum fields
Bad Diode
9 days
2
-5
/
+43
*
Add typechecking for enum fields
Bad Diode
9 days
4
-34
/
+81
*
Fix typechecking issues for bitops tests
Bad Diode
9 days
2
-8
/
+14
*
Add funcall typechecking
Bad Diode
9 days
2
-42
/
+79
*
Make sure nil return values and parameters are considered as such
Bad Diode
9 days
1
-2
/
+16
*
Add more graph viz for function maps and types
Bad Diode
9 days
2
-44
/
+205
*
Change typecheck returns to emit err on site
Bad Diode
9 days
1
-29
/
+16
*
Typecheck return values in the entire function body
Bad Diode
9 days
2
-9
/
+86
*
Add proper parsing of return statements and functions params
Bad Diode
9 days
3
-18
/
+41
*
Add wip function typechecking
Bad Diode
10 days
2
-9
/
+82
*
Add non-exhaustive typechecking for cond/match expr
Bad Diode
10 days
3
-11
/
+64
*
Add set typechecking
Bad Diode
10 days
2
-8
/
+33
*
Add while typechecking
Bad Diode
10 days
2
-4
/
+22
*
Add typechecking for if expressions
Bad Diode
10 days
2
-10
/
+50
*
Change typechecking to be independent of the symbolic checking
Bad Diode
10 days
2
-52
/
+122
*
Add more expressions to type inference method
Bad Diode
10 days
2
-25
/
+105
*
Implement basic type inference for numbers and symbols
Bad Diode
10 days
2
-30
/
+54
*
Start basic type checking/inference
Bad Diode
10 days
2
-123
/
+91
*
Add constrain to let parsing either type or value must be present
Bad Diode
10 days
3
-2
/
+8
*
Start implementing the typechecker
Bad Diode
12 days
3
-59
/
+225
*
Remove old files no longer needed as reference
Bad Diode
12 days
13
-1106
/
+139
*
Add semantic duplication check for enum fields
Bad Diode
12 days
2
-13
/
+16
*
Add semantic checking for enum constructs
Bad Diode
12 days
4
-54
/
+108
*
Fix scope allocation bug (non zero!)
Bad Diode
12 days
1
-3
/
+6
*
Add scope pointer to AST nodes
Bad Diode
12 days
2
-1
/
+4
*
Remove unnecessary scope creation.
Bad Diode
12 days
1
-32
/
+59
*
Add a basic symbol checker
Bad Diode
12 days
8
-133
/
+450
*
Add a couple of macros for ergonomic set/map creation
Bad Diode
13 days
2
-85
/
+148
*
Add some color to tests makefile target
Bad Diode
13 days
1
-2
/
+4
*
Make sure symbol chains continue as expected.
Bad Diode
13 days
1
-0
/
+7
*
Add parsing of funcalls
Bad Diode
13 days
2
-2
/
+12
*
Add parsing support for functions
Bad Diode
13 days
2
-3
/
+146
*
Move vm/chunk compiler to separate file
Bad Diode
13 days
5
-406
/
+452
*
Add temp result printing after OP_HALT
Bad Diode
14 days
2
-8
/
+26
*
Add proper LD instruction to lit int value type
Bad Diode
14 days
2
-29
/
+83
*
Add a bunch of op types to the VM
Bad Diode
14 days
2
-52
/
+192
*
Implement the worlds worst register machine
Bad Diode
2024-06-19
2
-32
/
+109
*
Add barebones stack vm
Bad Diode
2024-06-19
2
-3
/
+127
*
Move parser to its own file
Bad Diode
2024-06-19
3
-1424
/
+912
*
Change a few syntax constructs for consistency
Bad Diode
2024-06-19
4
-17
/
+50
*
Add basic while loop
Bad Diode
2024-06-18
3
-3
/
+43
*
Add `tests` target to makefile
Bad Diode
2024-06-18
2
-13
/
+33
*
Add `cond` conditionals
Bad Diode
2024-06-18
2
-33
/
+58
*
Add enum parsing
Bad Diode
2024-06-18
3
-30
/
+99
*
Fix some syntax issues with match cases
Bad Diode
2024-06-18
2
-8
/
+11
[prev]
[next]