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
/
tests
Commit message (
Expand
)
Author
Age
Files
Lines
*
Add LDVAR to compilation and vm
Bad Diode
7 days
1
-4
/
+7
*
Add initial implementation of variable compilation
Bad Diode
7 days
1
-1
/
+6
*
Add bitwise operations
Bad Diode
7 days
1
-1
/
+7
*
Add immediate arithmetic and logic op compilation
Bad Diode
7 days
1
-0
/
+1
*
Fix AND/OR and add NOT instruction compilation
Bad Diode
7 days
1
-1
/
+2
*
Add compilation of binary logic expressions
Bad Diode
7 days
1
-2
/
+5
*
Generalize binary compilation expression
Bad Diode
8 days
1
-5
/
+6
*
Add bytecode compilation for strings and booleans
Bad Diode
8 days
1
-0
/
+10
*
Fix some typechecking errors
Bad Diode
8 days
3
-264
/
+150
*
More pointers and array typechecking
Bad Diode
8 days
1
-10
/
+18
*
Add initial pointer and array access/declaration typechecking
Bad Diode
8 days
1
-3
/
+9
*
Prepare for array/pointer typechecking
Bad Diode
9 days
2
-108
/
+122
*
Fix a segfault
Bad Diode
9 days
3
-26
/
+14
*
Add enum de-structuring and int matching on match expr
Bad Diode
9 days
1
-1
/
+24
*
Fill up main symbol table with everything we need
Bad Diode
9 days
1
-21
/
+20
*
Further consolidate symbol names
Bad Diode
10 days
1
-2
/
+2
*
Consolidate semantic analyzer functions
Bad Diode
10 days
1
-21
/
+38
*
Fix a bug with type resolution for inner structs
Bad Diode
10 days
1
-17
/
+14
*
Fix struct literal assignment
Bad Diode
10 days
1
-7
/
+10
*
Fix typechecking for nested struct literals
Bad Diode
10 days
1
-0
/
+2
*
Add better ergonomics for nested struct literals
Bad Diode
10 days
1
-5
/
+15
*
Fix bug in struct/enum field matching
Bad Diode
10 days
1
-1
/
+0
*
Bugfixes for struct accessors
Bad Diode
10 days
1
-17
/
+41
*
Update inner struct symbol resolution
Bad Diode
10 days
1
-9
/
+4
*
Add inner struct typechecking
Bad Diode
10 days
1
-5
/
+26
*
Add compound types for anonymous struct fields
Bad Diode
11 days
1
-2
/
+12
*
Remove parenthesis requirement from match, while, if
Bad Diode
11 days
2
-11
/
+11
*
Add struct literals typechecking
Bad Diode
11 days
2
-49
/
+56
*
Change grammar for struct literals
Bad Diode
11 days
1
-3
/
+3
*
Fix set typechecking
Bad Diode
11 days
1
-1
/
+1
*
Add typechecking for structs and struct fields
Bad Diode
11 days
1
-1
/
+17
*
Add field accessor for typechecking enum fields
Bad Diode
11 days
1
-0
/
+3
*
Add typechecking for enum fields
Bad Diode
11 days
3
-25
/
+30
*
Fix typechecking issues for bitops tests
Bad Diode
12 days
1
-1
/
+1
*
Add funcall typechecking
Bad Diode
12 days
1
-26
/
+34
*
Add more graph viz for function maps and types
Bad Diode
12 days
1
-25
/
+31
*
Typecheck return values in the entire function body
Bad Diode
12 days
1
-1
/
+5
*
Add proper parsing of return statements and functions params
Bad Diode
12 days
1
-9
/
+8
*
Add wip function typechecking
Bad Diode
12 days
1
-9
/
+9
*
Add non-exhaustive typechecking for cond/match expr
Bad Diode
12 days
1
-4
/
+9
*
Add set typechecking
Bad Diode
12 days
1
-8
/
+10
*
Add while typechecking
Bad Diode
12 days
1
-0
/
+4
*
Add typechecking for if expressions
Bad Diode
12 days
1
-10
/
+20
*
Change typechecking to be independent of the symbolic checking
Bad Diode
12 days
1
-6
/
+10
*
Add more expressions to type inference method
Bad Diode
13 days
1
-0
/
+4
*
Implement basic type inference for numbers and symbols
Bad Diode
13 days
1
-2
/
+6
*
Start basic type checking/inference
Bad Diode
13 days
1
-1
/
+2
*
Add constrain to let parsing either type or value must be present
Bad Diode
13 days
1
-1
/
+1
*
Start implementing the typechecker
Bad Diode
2024-06-21
1
-53
/
+67
*
Remove old files no longer needed as reference
Bad Diode
2024-06-21
1
-38
/
+50
[next]