On Wed, May 11, 2011 at 6:13 PM, Gregory Crosswhite <
gcr...@phys.washington.edu> wrote:
[snip]

> 1) Cabal is a tool that can only be used to build Haskell packages with
> some supporting C/C++ code thrown in
>
> and
>
> 2) Cabal is currently the only tool that can realistically be used to
> properly build and install Haskell packages due to the great complexity
> involved with getting all the details right
>

I agree with much of what you said.  I created this feature request for
cabal, that I think would go quite aways towards addressing the problem, but
someone marked it as wontfix:
  http://hackage.haskell.org/trac/hackage/ticket/815

In my opinion, the two most valuable things about cabal are its good
dependency calculation and it allowed hackage to gain momentum.
 Unfortunately, we are also forced to use it as a build system and it's
quite inadequate for that task.  I say forced because there is no standard
way to extract the dependency calculations from it.  You have to write a
Setup.hs file to extract it and it's not trivial. If you succeed at that
task, then you can't even reuse the code without copy&pasting it later.

In fact, I never invoke cabal-install directly anymore.  I've corrupted my
package databases too many times.  I make sure to always use cabal-dev for
everything.  I think that says something about cabal's efficacy as a build
system.

Jason
ps. As soon as I figure out a way to get infinite free time I'll implement
the translation to makefiles myself...
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to