Shell still does not correctly handle semicolons in the
middle of expressions. In the following, it executes after
line 2, but it should execute after line 5.
let
val x = 1;
in
x + 2
end;
In Morel Java, this isn't a problem because the JavaCC-based parser works on a stream, and stops reading as soon as it sees a complete expression. This is a harder problem for Pest, whose input is a string.