Ian Piumarta
88af7147a0
Remove stale ccmeta-input.txt.
2 years ago
Ian Piumarta
c4d102b983
Add boot and library meta code.
2 years ago
Ian Piumarta
1b95e5d057
Update author information.
2 years ago
Ian Piumarta
5f8587455e
README.md is a symlink to the one in doc.
2 years ago
Ian Piumarta
b86284cba0
Add parsimony tests.
2 years ago
Ian Piumarta
eee8515a82
Add C metaprogramming examples.
2 years ago
Ian Piumarta
2e946ae721
Add documentation directory.
2 years ago
Ian Piumarta
0e94f5fa51
Don't run parsimony tests if the dir is missing.
Don't run expected error tests at all.
2 years ago
Ian Piumarta
6145288153
Add some typedefs to proceed past non-inclusion of header files.
2 years ago
Ian Piumarta
91d5e4af0b
Ignore more junk.
2 years ago
Ian Piumarta
f6dab4a73f
Add flags to support compilation with Homebrew libgc.
2 years ago
Ian Piumarta
e6221cd68a
Handle string and stringLiteral properly in outputNode.
Update meta grammar and C grammar hooks.
Add unquote mechanism.
2 years ago
Ian Piumarta
720c2c141d
Export prim_parseFrom to meta language.
2 years ago
Ian Piumarta
2f2f27ccf0
Record function definitions in program.last map.
2 years ago
Ian Piumarta
8845a0baba
Add keyword arguments to newCall, meta grammar, and t_Call case of evaluator.
2 years ago
Ian Piumarta
4413adc94d
Use C_string for multi character sequences.
Use C_StringLiteral for multi part string literals and C_string for each part.
2 years ago
Ian Piumarta
20a3d6d17b
Add everyExternalDeclaration() and ensure().
2 years ago
Ian Piumarta
3a14858a70
Make yy context be local.
Add input struct pointer to yy context object.
Returning multiple objects from meta function appends them all to program.
Meta import via read-eval-print instead of changing input file pointer.
Add treeCopy and treeCopyUnquoting functions.
Add primitive treeCopy.
2 years ago
Ian Piumarta
516867784d
Add global parsimony variables to track struct/union/enum declarations.
2 years ago
Ian Piumarta
79a457b358
Cosmetic.
2 years ago
Ian Piumarta
c2ede14d6a
Add prim_treeCopy primitive; move some functions to before the grammar.
2 years ago
Ian Piumarta
9060483dbd
Move meta language environment initialisation out of main() to init().
2 years ago
Ian Piumarta
d22ed02e77
Remove debugging printf.
2 years ago
Ian Piumarta
8f69c6f81d
Reorganise grammar putting common rules at the end.
C and meta have their own space rules - and --.
2 years ago
Ian Piumarta
7b881478fd
Add names of rules as comments after section numbers for navigation.
2 years ago
Ian Piumarta
d9f06de063
Eval handles Undefined and Function in switch to avoid compiler warning.
2 years ago
Ian Piumarta
238cce2151
Add map_pop to remove the last element from an array-like map.
2 years ago
Ian Piumarta
eb85a1fb75
Compare symbols by their name not by their address to prevent non-determinism.
2 years ago
Ian Piumarta
886cf28409
Clean also removes dSYM directories.
2 years ago
Ian Piumarta
51d648e7e1
Move source files into src subdir.
Makefile cleans dSYM directories.
2 years ago
Ian Piumarta
fdcbaeef72
Reorganise test directories.
2 years ago
Ian Piumarta
7b886f8036
add slices and additional constructors for: array map symbol string
2 years ago
Ian Piumarta
6ffcae2eab
remove is_C_keyword flag from Symbol payload; add is_C_keyword() function
2 years ago
Nathan R
4b9d58177b
fixed tree identation for meta nodes
3 years ago
Nathan R
392a8bea7d
new input file with dynamic C expression
3 years ago
Nathan R
828912aa81
last day modifications, more incoming
3 years ago
Nathan R
165efe942e
fixed identation and added a way to know if a list is empty
3 years ago
Nathan R
a0ce191245
corrected some bugs with the - (blank) rule
3 years ago
Nathan R
c0c4334e85
added a way to print all the tree
3 years ago
Nathan R
ad1111a9b6
added a way to print meta nodes, some nodes are missing but most of it is there
3 years ago
Nathan R
6261f1e872
fixed output
3 years ago
Nathan R
42fe9fbe10
removed meta.leg
3 years ago
Ian Piumarta
695a9d39df
allow C and meta to coexist; add @ prefix for meta statements in grammar.
3 years ago
Nathan R
7f71bb9df8
added meta rules, new.txt passes TODO : fix assterion line 3291
3 years ago
Nathan R
4a62df2613
added meta.leg with all rules refactored
3 years ago
Nathan R
2b5abcd4c4
typo
3 years ago
Nathan R
31f4d9ed14
updated grammar + added some types
3 years ago
Nathan R
9a08ccd4d0
updated comments
3 years ago
Nathan R
ecb8b27650
updated dotest
3 years ago
Nathan R
50cddd1fd7
input updated
3 years ago