This is a living document - delete things when done. Avoid discussion. Current version (?? Creek) - handle free_type more cleanly?? - rethink line-like parsing. Should element also start a line? - review simple/complex parsing options in various situations - can I move 'ok' into the parse context? Then error functions can set it. - allow something so I don't need to call config2context so often Some code stanza to be added to do_reduce() - structs - const fields - anonymous field - array or struct (or pointer to these) multiple anon struct ar allowed if they don't conflict - [] can apply to anon array field - anon struct field gets fields interpolated - change 'labels' to only be created for 'use' - handle syntax errors better - recover quickly. - manifest values for arrays and structs [a,b,c] - yet more operators << >> # bit-ops & | ~ &~ op= - split values so I can have an array of just the value (1 byte for u8) - integers, unsigned, bitfield, float - pointers - owned or borrowed - overloaded or pure - array slice - array buffer - can be added to and grows. - char, string search, regexp search - allow "do stuff" as a stand-allow statement (scope) Next version: Much later - functions and procedures - per-field attributes - records - enum - classes - operators as interface methods - interfaces, inheritance - modules, imports and exports - closures, threads, co-routines - introspection?