Currently, scanner is somewhat spaces insensitive, it can recognize tokens like "L E T". However, certain cases are not covered, such as "< =". Do a full audit, and make sure spaces are skipped when needed, and add unit tests for all token types.