
On Sat, Nov 29, 2008 at 2:41 AM, John Meacham
On Fri, Nov 28, 2008 at 07:41:42PM -0800, Don Stewart wrote:
john:
On Wed, Nov 26, 2008 at 07:20:12PM -0800, Jason Dagit wrote:
I spoke with the author of the fork a bit in IRC around the time it happened and my understanding is that: 1) John sternly objects to using cabal as the build system for JHC
This is a fairly silly reason to fork a project, especially jhc, for a number of reasons.
One of the reasons though, for the branching, is that the potential developers, who all have Haskell toolchains, couldn't do:
$ cabal install jhc
Then now can, but have to write 'lhc' instead of 'jhc'.
We've probably just increased the jhc "alpha user" base 10 fold. Hooray!
Except that for all those systems that can use cabal, ./configure && make install would have already worked perfectly. So in actuality my alpha user base drops 50-fold.
Also, I am not so sure who these people are who are willing to type 10 characters to try out jhc, but not a dozen more. I mean, a few typos and there won't be enough keystrokes in their budget to compile hello world, let alone provide a bug report or send a patch :)
I think you are overestimating the penetration of cabal or underestimating the size and diversity of the haskell user base. There are a whole lot of people out there who just want to use haskell and don't keep up with the IRC channels or the mailing lists. Grad students interested in some aspect of jhcs design who did apt-get install ghc and then expect jhc to work. Sysadmins who manage clusters of computers for work but have no particular attachement to haskell whose kickstart scripts allow just dropping in an autoconfed tarball but have to be retooled for something new?
Integrating into the ecology of the vast majority of Haskell code is a good way to get and keep developers. And since GHC -- which we need to build JHC anyway -- already ships with Cabal, no additional dependencies are required.
But wouldn't it be nicer if Haskell fit into the ecology of OSS in general? Even better wouldn't it be nice if peoples first impression of haskell was not annoyance at having to build a package in some proprietary way , but rather being impressed with some piece of software and looking into its implementation and seeing how it got to be so good? No one when just trying to install a random program not knowing anything about the implementation gets excited at seeing that they have to learn some brand new way of getting it to work.
For a standalone program like jhc, integrating with the open source community as a whole, and having the flexibility of working with the right tool for the task at hand are very desirable things.
When it comes down to it, an actual reason to use cabal is not there, If the reason is to fit into the ecology of Haskell code, then my question is why is this ecology so distinct to begin with? What is wrong with haskell such that its world must be so disjoint from that of other languages? That seems to be the real WTF here that needs fixing.
When it comes down to it, I've just been down a slippery slope. The fact is, hackage works and hackage is a good reason to support cabal. I'd also so say this thread is no longer productive. A fork happened, the fork embraces cabal but jhc does not need to embrace cabal; end of story really. We all get what we want. Thanks, Jason