[Haskell-cafe] Human-friendly compiler errors for GHC

Brandon S. Allbery KF8NH allbery at ece.cmu.edu
Sun Jul 13 11:21:44 EDT 2008


On 2008 Jul 13, at 9:36, Max Bolingbroke wrote:

> 2008/7/13 Claus Reinke <claus.reinke at talk21.com>:
>> Then again, we don't do fuzzy matching, only completion
>> of partial identifiers and suggesting possible qualified
>> names and imports for unqualified ones.
>
> Agreed: doing fuzzy matching on >every< available identifier from all
> packages would truly suck. I would propose just looking for exact
> matches in non-imported modules for identifiers that are not in scope.

I would fuzzy match on unqualified names in the current module (or  
directory), qualified names in the module in question, and if that  
doesn't exist (== have a .hi) then try fuzzy-matching the module  
name.  If the unqualified fuzzy match doesn't work, look for exact  
matches in non-imported modules.

> Well, noone has actually said they think fuzzy matching would be
> useful yet, so I suspect this patch is dead on the vine :). I've filed

Huh?  Edit distance is a good way to handle typoes --- and, while some  
people have asserted that "we don't need that because I can see it  
already", most people *don't* see it right away.  (I do tend to spot  
typoes quickly --- in prose.  It's nowhere near as accurate for code,  
and even when it does work it isn't exact:  I'll have a "something's  
wrong" about some spot in the code and still take an hour to spot the  
typo.)  I'm also *really* good at typoes, which you won't see in email  
but will see regularly in #haskell.   :)

-- 
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery at kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery at ece.cmu.edu
electrical and computer engineering, carnegie mellon university    KF8NH




More information about the Haskell-Cafe mailing list