241 Commits

Author SHA1 Message Date
c29c807861 renamings 2021-01-28 13:08:44 +01:00
fd483811b9 First flowgraph? 2021-01-28 11:49:15 +01:00
a027e449cf fix unary operator bug in stacksize determination 2021-01-23 20:56:44 +01:00
fab8881947 determine stack size simply by trying 2021-01-23 20:43:19 +01:00
60452b3713 flip commutative exprs for stack efficiency 2021-01-23 18:36:03 +01:00
4f9c4364e5 empty file case 2021-01-22 22:08:08 +01:00
9060cd81ea new tests 2021-01-22 22:07:39 +01:00
88eae33df4 fix empty file case 2021-01-22 22:07:16 +01:00
c99de7dcc5 implement loop generation 2021-01-22 17:56:12 +01:00
763f58b09a linenums 2021-01-22 17:04:31 +01:00
e2d670bdba add + improve comparison codegen 2021-01-22 17:04:23 +01:00
f65cd86f32 fix bug where both children were removed if they had the same identity 2021-01-22 17:03:59 +01:00
3d40e93fdc more expressive undefined error 2021-01-22 16:44:06 +01:00
ad7e86df24 changed bytecode version + bool exprs 2021-01-22 16:43:56 +01:00
c61c8dcb22 add more expressive message for undefined variable 2021-01-22 16:43:29 +01:00
3990cb0d29 linenums 2021-01-22 13:50:30 +01:00
7212dd8180 add support for AND, NOT, OR in exprs 2021-01-22 13:50:18 +01:00
27201dfd0d correct indentation in .j 2021-01-22 13:05:52 +01:00
1d4aa6aca2 add support for string, boolean literals + identifiers 2021-01-22 12:53:36 +01:00
67a708b9d3 use condegen instance again instead of static => cleanup method arguments 2021-01-22 12:19:10 +01:00
246169307a many tests for logic + ifelse (not implemented) 2021-01-21 23:48:36 +01:00
7d70d480eb initial support for if 2021-01-21 22:52:14 +01:00
25a9bf6388 return nodetable from typecheck 2021-01-21 22:51:46 +01:00
925e8d42d0 return nodetable from typecheck 2021-01-21 22:51:35 +01:00
1e22630d14 return nodetable from typecheck 2021-01-21 22:51:20 +01:00
c28ed1ac32 fix a = a / a = b assignment bug 2021-01-21 22:51:02 +01:00
498b903800 remove 1 test 2021-01-21 19:03:11 +01:00
b703ae2b31 add unary codegen for +, - 2021-01-21 19:03:04 +01:00
8fe5659f21 fix bug with unary precedence 2021-01-21 19:02:48 +01:00
19a30632d4 add some codegen tests 2021-01-21 18:20:47 +01:00
f9eb73630f make codegen completely static 2021-01-21 18:20:32 +01:00
049f2529d4 ignore 2021-01-18 17:55:23 +01:00
c93589bd3f ignore 2021-01-18 17:55:04 +01:00
a7d6e7bec3 add println codegen + addition codegen + fix return missing 2021-01-17 21:56:13 +01:00
1718d647a7 use codegen + jasmin when compiling 2021-01-17 17:59:09 +01:00
805f63893f first simple unfinished code generator 2021-01-17 17:58:51 +01:00
daa8da71ca test class 2021-01-17 17:58:36 +01:00
ad37601afc slight refactor for map 2021-01-17 17:57:39 +01:00
5a384af948 new test program 2021-01-17 17:57:26 +01:00
aa48550b3c update 2021-01-17 17:57:10 +01:00
22702c97e0 slight cleanup 2020-12-16 15:20:10 +01:00
63424cec36 new test 2020-12-16 15:12:03 +01:00
f621430f26 remove unused 2020-12-16 15:07:00 +01:00
c5aee78b7b new tests 2020-12-16 14:55:52 +01:00
938d2a6afe add test coverage plugin 2020-12-16 14:55:38 +01:00
e08cbcb15a slight formatting changes 2020-12-15 20:03:11 +01:00
3c17220ef1 slight formatting changes 2020-12-15 19:57:21 +01:00
1333f24d03 add grammar for main prog 2020-12-15 18:02:38 +01:00
200924e1d3 fix test bugs 2020-12-15 17:57:11 +01:00
2c1a714e10 remove demo "test" 2020-12-15 17:54:08 +01:00