If the scanner fails to scan a certain lexem it's only option is to crash the program with an error message. In some way the scanner needs to work in an Error monad and return a failure message when things go wrong. This is particularly critical because blocks are no longer all scanned at once.
If the scanner fails to scan a certain lexem it's only option is to crash the program with an error message. In some way the scanner needs to work in an Error monad and return a failure message when things go wrong. This is particularly critical because blocks are no longer all scanned at once.