WIP Implement parser::parse