> I have another pet peeve: ease of use of tools.
>
> The Haskell standard (intentionally?) leaves the interface to tools an
> implementors question. Unfortunate, IMHO, every Haskell compiler I've
> tried (GHC, NHC, HBC) have just had plain horrible interfaces.
> Interpreters are inherently a different story, but Hugs at least is a
> lot more friendly.
Intentionally, I think.
> I'm not targeting `ghc' in particular, but I do feel that for a
> programming language that stresses cleaness, the tools should reflect
> the same: simple things should be simple to do.
>
> The report should state the least common denominator interface to
> command line tools, at least up to relatively simple tasks like
> compiling a multi-module program (spanning several directories).
>
> How about `haskell2 [-I <dirs>] <main module>'?
I have nothing against someone promulgating a standard CLI for Haskell compilers, but
it should not be in the language definition because it is an operating system issue,
not a language issue. There are many different ways to present an interface to
programs and data, etc., and CLI is only one of them. No need to mandate one
particular case in the language definition.
Besides, it is difficult to take into account the flexibility that an implementor
might need or want. I'm not just talking about flags and options. You said yourself
that this sort of thing doesn't apply to an interpreter, for instance, but an
interpreter is certainly a valid implementation of the Haskell definition.
Finally, I expect that anyone who has sufficient motivation to create a standalone
executable, rather than simply using an interpreter like Hugs, will be familiar to
some extent with the compiler CLI we have all inherited from cc.
--FC