Finally realised a way around that initialised state, there's actually a convenient...
treeef5ff09ebefb41acb7cb19b316609e829e76c1ac
drwxr-xr-x - fridh
drwxr-xr-x - interpreter
drwxr-xr-x - lexer
-rw-r--r-- 1760 main.cpp
drwxr-xr-x - parser
drwxr-xr-x - shared
drwxr-xr-x - variable