first thing to find out is that an ad-hoc syntax likely requires separate parser/lexers. for example: i'm using a header/body separation in ramblings.txt which have completely different lexemes. so... i can leave the preprocessor as is. it sort of works, but i get some errors i don't understand. time to call it a day.