Commit before completely refactory and modifying the grammar and code generators