HNC
HNC copied to clipboard
Implement indentation-based syntax in Parser
Replace
foo = {
x = 2
bar x x
}
with
foo = bar x x where
x = 2
Note that the indentation (so called "offside rule") cannot be described by a context-free grammar so it requires to use a state monad transformer in Parsec.
Also note that this task requires to change most of about 300 tests we have to match the new syntax.