
Isaac,
I don't think the "runhugs" bit is a requirement. You can execute the setup script however you like.
Any reason we can't simplify Joe's interface to: ghc --install http://url/of/some.pkg --or-- hugs --install /path/to/some.pkg Where some.pkg is some combination of tarball and setup specification. The install system of the compiler/interpreter would retrieve some.pkg from the specified location, and use the setup spec to compile it and put it in the appropriate locations such that Joe can use it from his Haskell program or perhaps invoke it as an executable in whatever manner is appropriate to his local OS (mouse-click or command-line). The open question is what this setup specification should look like. There is an obvious tradeoff between the interests of Joe and Angela on the one hand and Marcus on the other. Marcus creates packages that require some combination of GCC and Perl and perhaps some random Perl libs from CPAN to build. There is really no way to make installation of systems he creates simple and generic. My feeling is that we shouldn't even bother to try. Marcus and Sam both know enough to communicate effectively to make it happen and neither of them is going to be happy trusting some generic install script to get it right on their totally customized systems! Angela OTOH knows little about platform dependencies and other stuff and simply wants to make a couple of Haskell libraries available with minimum hassle. Angela would almost certainly prefer a system in which the compiler can guarantee her that her package will install correctly on all conforming Haskell compilers to a system where she has the full freedom to script arbitarily complex installation and make arbitrarily obscure mistakes on any system. I don't know whether the setup spec should be a static data structure or Arie's setup monad, but I'm pretty sure that Angela would prefer either one to generic IO. -Alex- PS I am dropping the issue of malware here to focus on making things as easy as possible for Joe and Angela. PPS I realize that you really want to suport Marcus as well. Perhaps it might make sense to separate hc-pkg from the rest of the document? ___________________________________________________________________ S. Alexander Jacobson Check out my new blog!!! 1-917-770-6565 voice http://alexjacobson.com