Basically passed all the tests, met some new problems.

1. {name} cannot refer to globals. E.G., in order to get MAX_LENGTH, we
have to do ?(->MAX_LENGTH):MAX_LENGTH anything{MAX_LENGTH}. it's really
inconvenient

2. Whenever we met a exception, we should stop parsing the whole thing
right? say, if we meet a lineLengthExceeded, should we lose the
connection directly?