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