In the second part of this short series, we create the parser, which transforms the tokens we generated in the last episode into a program tree. Our parser analyzes the sequence of tokens and takes into account the order of operations of different operators. For example, multiplication and division have a higher precedence to addition and subtraction.