You don't have to modify the scanner AT AL, you can, speaking in point
of view from scheme. However, I think it is the same case with c++ and
java.
For any error cases that the scanner doesn't detect, you have to handle
that through your own functions as specified by the mips assembly
language give to us on the course website.
http://www.student.cs.uwaterloo.ca/~cs241/mips/mipsasm.html