Jake Wakeling
|
3c485fcedc
|
Implicity cast procedure arguments if safe
|
2 months ago |
Jake Wakeling
|
1544347804
|
Inline integer and float lexing
|
2 months ago |
Jake Wakeling
|
8afca84b87
|
Implement strings, cstring(), and len()
|
2 months ago |
Jake Wakeling
|
d2c465aaf4
|
Properly implement floating point arithmetic
|
2 months ago |
Jake Wakeling
|
8021c03df5
|
Implement procedure argument mutability
|
2 months ago |
Jake Wakeling
|
2be2f4390b
|
Implement for statements
|
3 months ago |
Jake Wakeling
|
1aa5519327
|
Implement if and else statements
|
3 months ago |
Jake Wakeling
|
0f9bb9dd1c
|
Implement comparison and logical expressions
|
3 months ago |
Jake Wakeling
|
4214148266
|
Improve hash expression handling
|
3 months ago |
Jake Wakeling
|
cc58a1d3fc
|
Implement procedure arguments
|
3 months ago |
Jake Wakeling
|
3f9a543df8
|
Implement array subscripting
|
3 months ago |
Jake Wakeling
|
828da145ae
|
Parse procedure calls as an infix operator
|
3 months ago |
Jake Wakeling
|
f05bcdbc0f
|
Add TestUNIX.sh script for running future tests
|
3 months ago |
Jake Wakeling
|
6a79f8726e
|
Implement arrays, integrate values into AST nodes
|
3 months ago |
Jake Wakeling
|
f718ad0837
|
Parse integers at lex time and refine type parsing
|
3 months ago |
Jake Wakeling
|
33e34d4e2e
|
Spec lexemes, constants, variables, and types
|
3 months ago |
Jake Wakeling
|
09e2c5c89f
|
Implement the bitwise not unary operator
|
3 months ago |
Jake Wakeling
|
e91c41c67b
|
Implement booleans
|
3 months ago |
Jake Wakeling
|
74972c2994
|
Various improvements to permit rudimentary IO
|
3 months ago |
Jake Wakeling
|
861312df2e
|
Implement address of and dereference code gen
|
3 months ago |
Jake Wakeling
|
f782ab77f3
|
Implement pointer chain types
|
3 months ago |
Jake Wakeling
|
19793bd052
|
Replace the expression parser with a Pratt parser
|
3 months ago |
Jake Wakeling
|
d44ca56769
|
Implement string lexing
|
4 months ago |
Jake Wakeling
|
af77441bb0
|
Implement system calls
|
4 months ago |
Jake Wakeling
|
c4932f6022
|
Implement type casting and real numbers
|
4 months ago |
Jake Wakeling
|
4bdd6fc655
|
Implement zero value variable initialisation
|
5 months ago |
Jake Wakeling
|
6dd9223145
|
Implement variable assignments
|
5 months ago |
Jake Wakeling
|
04569e6b84
|
Fix not checking for null on operator stack
|
5 months ago |
Jake Wakeling
|
4dec857b67
|
Enable the CONFIGURE_DEPENDS CMake glob flag
|
1 year ago |
Jake Wakeling
|
12630d46f8
|
Add warning level configuration
|
1 year ago |
Jake Wakeling
|
163d55f61c
|
Shorten remaining debug flags
|
1 year ago |
Jake Wakeling
|
ac4740cf82
|
Merge compile.c into main.c
|
1 year ago |
Jake Wakeling
|
1248335294
|
Replace --debug-lex flag with -E
|
1 year ago |
Jake Wakeling
|
5325b94aba
|
Implement note logging procedure
|
1 year ago |
Jake Wakeling
|
644f1986fa
|
Handle local and argument-less procedure calls
|
1 year ago |
Jake Wakeling
|
3846818615
|
Handle unary operators with op_lookup
|
1 year ago |
Jake Wakeling
|
c2c12178e8
|
Update todo list in README
|
1 year ago |
Jake Wakeling
|
e2c1b427a4
|
Implement LLVM generation for +, -, *, /, and %
|
1 year ago |
Jake Wakeling
|
258d5a1b9c
|
Remove excessive test sources
|
1 year ago |
Jake Wakeling
|
997f1178c1
|
Fix parent symbol table pointer not being set
|
1 year ago |
Jake Wakeling
|
a019f098d2
|
Remove LLVM variable hack
|
1 year ago |
Jake Wakeling
|
a47f6532e4
|
Implment a semantic analysis stage
|
1 year ago |
Jake Wakeling
|
895c21f5f5
|
Use AST nodes in symbol table directly
|
1 year ago |
Jake Wakeling
|
8dbbe4a51f
|
Handle parenthesis when parsing expressions
|
1 year ago |
Jake Wakeling
|
fa7200b938
|
examples: Add a variable to the expression example
|
1 year ago |
Jake Wakeling
|
fd64da68f0
|
parse: Implement expression parsing
|
1 year ago |
Jake Wakeling
|
b269184341
|
lex: Merge keyword finding into the lexer
|
1 year ago |
Jake Wakeling
|
30b1fa8700
|
llvm: Implement variables with a temporary hack
|
2 years ago |
Jake Wakeling
|
6d07b21638
|
llvm: Reimplement LLVM code generation
|
2 years ago |
Jake Wakeling
|
d47751def3
|
parse: Implement if and for statement parsing
|
2 years ago |