
Would it be possible to use haskeline as a fallback/default, for future Ghc's?
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/haskeline
As the author of haskeline, integrating it into ghc is on my TODO list. :-)
Good to hear!-)
Note that the earliest this could happen would be ghc-6.12.1, which won't be released for at least another year.
Why that? It wouldn't change any APIs, and if you're afraid of changing client programs that use ghci (is that likely? is the key set different from editline? and for windows, you'd only be adding line editing functionality, not removing/changing any), you can always put it behind an option. Or is the API so different that you'd have to rewrite ghci? There shouldn't be more than a handful locations affected, iirc, but they are all tuned to readline/editline's imperative API.
But just to reiterate: 1) Other than on Windows, libedit is widely available and compatible (including Debian, which just needs the libedit-dev package). 2) The Windows console provides basic interaction even without libedit, including arrow key left/right, history, delete key, etc. (Tab completion of Haskell identifiers is the most glaring omission.)
I don't mind whether it is editline or haskeline, but as a windows user, I'd like to have ghci's tab completion (it isn't limited to identifiers, either, I think) - ever since adding support for various Haskell-related completions in my Vim editing, I miss it when using ghci.. rlwrap is ok, but no proper replacement. Claus