Implemented recursive-descent parsing