[Haskell-cafe] Editors for Haskell

John Meacham john at repetae.net
Tue May 30 18:46:47 EDT 2006

On Tue, May 30, 2006 at 10:33:05PM +0100, Brian Hulley wrote:
> I was kind of hoping that the syntax of Haskell could be changed so that 
> for any sequence of characters there would be a unique parse that had a 
> minimum number of "gaps" inserted by the editor to create a complete parse 
> tree, and moreover that this parse could be found by deterministic LL1 
> recursive descent.

a problem is that people don't write code like they write novels. At
least I don't. I skip around, adding the beginning and ending of
functions and going back and filling in the center, or writing the =>
first, then the type and going back and filling in the context. or
taking existing code and changing it in pieces, deleting something
there, adding it somewhere else, changing names, all of which leave
intermediate states that arn't just truncated programs.

I don't see such a property actually helping that much in terms of this
problem. I think you have no choice but to use heuristics to decide what
the user intends and try to limit the scope of potentially incomplete
source souring later things typed. Although not as popular as they once
were, error correcting parsers is a fairly advanced field in computer
science, combined with the knowledge of what names are in scope, I think
you can come up with fairly robust heuristics. It is by no means a
trivial problem, but it is certainly a tractable one.


John Meacham - ⑆repetae.net⑆john⑈

More information about the Haskell-Cafe mailing list