Tuesday, January 03, 2006

User Interface

The Yhc compiler takes most of its Haskell-compiling code from nhc98, and most of its backend/interpretter has been rewritten by Tom. The one bit that I think needs most attention is the user interface. Specifically, I see the following problems in the user interface (where user is a programmer, and interface is how they use yhc):
  • YHC_BASE_PATH - this trips pretty much everyone up
  • Path handling, where .hbc files go etc
  • Doesn't list which file its compiling.
  • Error messages are usually pretty bad, compiling many files at a time has made this worse, since now you don't even know the file the errors in
YHC_BASE_PATH is scheduled for elimination. Listing compiled files is trivial. Error messages are being slowly replaced, but the lack of global state in Haskell is making this quite a bit harder.

The one thing where there is less concensus as to what the desired behaviour should be is path handling - i.e. deciding where to put a file, and where to get it from. I have started a wiki page with my thoughts on this, which is here. Please add your thoughts, hopefully we'll come to a nice concensus, and have a nicely implemented user interface before long.


Post a Comment

<< Home