Commit Graph

66 Commits

Author SHA1 Message Date
Torsten Ruger
7c1c5431bc add qualification to function definitions 2014-06-02 14:00:30 +03:00
Torsten Ruger
1d10c2c03e had forgotten calls on instance variables. corrected + tests 2014-06-01 14:46:16 +03:00
Torsten Ruger
86431120d5 add also calls on classes and more tests for that 2014-05-31 17:58:26 +03:00
Torsten Ruger
4038bd331a clean up block names and export of qualified names makes assembler nicer to read 2014-05-31 17:02:55 +03:00
Torsten Ruger
3156887a81 add instance variables and module name as basic types (as name was there already) and add tests 2014-05-30 14:25:08 +03:00
Torsten Ruger
806960a4d6 fixing module and class rules to actually use module names. fix all tests 2014-05-30 12:17:11 +03:00
Torsten Ruger
f03d445f3d add module names and instance variables as parse rules 2014-05-30 12:06:42 +03:00
Torsten Ruger
3e93517986 adds class definition with tests 2014-05-30 10:59:49 +03:00
Torsten Ruger
e7a823bf3e renamed module_def too module_definition and fixed leading space tests 2014-05-30 10:42:43 +03:00
Torsten Ruger
caec5ee6f0 add module to root parse and tests 2014-05-30 10:31:25 +03:00
Torsten Ruger
c69a44f316 define modules and tests, no compiling 2014-05-29 15:57:33 +03:00
Torsten Ruger
5c0f62ebb9 upgrade calls with operator argument and chaining. Almost feels like cheating, too easy 2014-05-28 15:22:37 +03:00
Torsten Ruger
6bfe643032 add some return test to functions 2014-05-27 16:51:37 +03:00
Torsten Ruger
fbaf292bb6 add a simple return, ie the normal kind, not with trailing statements 2014-05-27 16:33:24 +03:00
Torsten Ruger
21a53c6a7f fix the compound type parser tests 2014-05-27 15:41:34 +03:00
Torsten Ruger
0b07e77782 fix the spurious root expression and add conmound types back (thanks to kasper for fixing that) 2014-05-27 15:36:51 +03:00
Torsten Ruger
00d85156da rename conditional to if expression 2014-05-24 10:18:54 +03:00
Torsten Ruger
65cde70114 add space at file end 2014-05-21 21:08:15 +03:00
Torsten Ruger
c9ffb78e82 allowing comments instead of newlines and not capturing comments (leave that for later as it messes the output) 2014-05-14 22:19:20 +03:00
Torsten Ruger
46ea1df51e rename function_call to call_site in all levels to avoid confusion 2014-05-13 21:15:02 +03:00
Torsten Ruger
d7f31e7f39 introduce constant class and add block to compile signature(wip, work in progress) 2014-05-13 16:24:19 +03:00
Torsten Ruger
cd67589f3e life must go on, compunds must go (for now) 2014-05-13 08:35:49 +03:00
Torsten Ruger
72de0089b2 small renames 2014-05-13 08:24:55 +03:00
Torsten Ruger
ff612446be using hash_key and value rules 2014-05-12 21:44:51 +03:00
Torsten Ruger
fdb5dd4f67 a good stab at array anf hash constants 2014-05-12 21:36:38 +03:00
Torsten Ruger
25a7c3ea68 fixed fibonacci example 2014-05-12 14:24:36 +03:00
Torsten Ruger
1170b0798b make condition brackets optional 2014-05-12 13:57:24 +03:00
Torsten Ruger
956d1eb135 newline fiddling in the parser yields goods results 2014-05-12 13:47:47 +03:00
Torsten Ruger
ee4d8033af redid while with brackets and just one condition expression 2014-05-12 12:26:38 +03:00
Torsten Ruger
e2fb0a5f34 rename conditional to control in parser 2014-05-12 12:20:31 +03:00
Torsten Ruger
7940efc64d still trying that while loop. Check as everything else works 2014-05-12 12:14:04 +03:00
Torsten Ruger
cc5915135a add lots of operators. Assignment becomes operator. fix the mess 2014-05-11 18:37:26 +03:00
Torsten Ruger
b4af123c9e operator docs 2014-05-11 17:05:21 +03:00
Torsten Ruger
be4825579d finally remove kaspers example from which the oprerator stuff is copied 2014-05-10 21:43:03 +03:00
Torsten Ruger
2d389d2e00 adds basic math operators, thanks to kasper associative and prioritised 2014-05-10 21:41:46 +03:00
Torsten Ruger
6378209f33 leave assignee as name_expression in assignment, fix tests accordingly 2014-05-10 19:11:32 +03:00
Torsten Ruger
47f1608685 start to add while loop 2014-05-10 19:02:51 +03:00
Torsten Ruger
e69decee90 slight shuffling 2014-05-10 12:54:31 +03:00
Torsten Ruger
051b0ea7dc remove the double transform rules (as not using maybe anymore) 2014-05-10 12:02:11 +03:00
Torsten Ruger
8f2a22d12f add a repeat to the root parser rule (need to test the root more) 2014-05-10 11:18:39 +03:00
Torsten Ruger
b266bb84ba splitting the parser up more 2014-05-10 11:14:34 +03:00
Torsten Ruger
af1df1a104 renamed root parser class to Crystal 2014-05-10 11:03:23 +03:00
Torsten Ruger
8e6297dcff improving the string according to kasper 2014-05-09 13:51:47 +03:00
Torsten Ruger
6ee290e0bb fixes all existing parser tests 2014-05-08 21:09:07 +03:00
Torsten Ruger
53a8efaa59 get the conditionals to work again 2014-05-08 19:49:15 +03:00
Torsten Ruger
b82c2241b7 get parameter lists to work again (no more ifs as function arguments:-) 2014-05-08 19:41:27 +03:00
Torsten Ruger
9c2dfe79da at least basic tests work again 2014-05-08 18:42:24 +03:00
Torsten Ruger
034ae4f7ca add comment and remove newline from space (starting a long whitespace battle) 2014-05-08 18:38:49 +03:00
Torsten Ruger
7c7e58ea62 upgrades ast to first class 2014-05-05 09:51:16 +03:00
Torsten Ruger
90e2658bc0 small poslish 2014-04-29 16:22:12 +03:00