> itz> All this taken together, I mean, _really_, is the lexical
> itz> structure of Haskell a botch, or what?
>
> Jon> No. Innovative. All the problems described in this thread reflect
> Jon> unwarranted assumptions inherited in emacs. It's plainly possible
> Jon> to parse Haskell, and not hard either.
>
> First, parsing of a complete program (eg. by a compiler) is quite
> different from parsing a buffer that is being edited by a human. The
> latter is hard, even for fairly well-specified languages.
> Irregularities only make it harder.
For syntax highlighting you only need to lexically analyse the buffer, not parse it. Haskell's lexical syntax is parseable by regular expressions, which means it shouldn't be hard to plug a syntax highlighter for Haskell into just about any editor.
I don't understand why you say that parsing a buffer being edited by a human is hard - perhaps doing incremental lexing is slightly harder than whole-file lexing, but not that much harder. The "state" of a Haskell lexer can be represented with a little trickery by an integer, so it isn't hard to cache the lexer's state at the beginning of each line. I did this once as an experiment when I added Haskell syntax highlighting to one of the KDE editors (I forget which).
The problem is not Haskell, it's emacs. Emacs's syntax highlighting has fairly deeply-wired-in assumptions about C-like languages (eg. last I looked you still couldn't support nested comments properly in font-lock).
Cheers,
Simon