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