Implementing a^b in the parser