In short, the lexical analyzer will check if words in the input are in the alphabet of the language, in this case the available words. Then, the parser will check the grammar which will be considered valid if the input is in the correct order.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.