On Fri, Jun 10, 2011 at 03:15, Manuel M T Chakravarty wrote:
Ian Lynagh:
> On Mon, Jun 06, 2011 at 03:47:57PM +0100, Malcolm Wallace wrote:
>> On 6 Jun 2011, at 13:49, Lyndon Maydwell wrote:
>>> I would be fantastic if XCode wasn't a dependency.  ...
>>>
>>> Not to detract at all from the work of the wonderful GHC and Haskell
>>> Platform contributors in any way. For me it would just make it that
>>> much easier to convince mac-using friends to give Haskell a try.
>>
>> The ghc team already bundle a copy of gcc in their Windows distribution, precisely because it can be fiddly to get a working copy of gcc for that platform otherwise.  I wonder if they would consider the possibility of shipping gcc on Mac too?  (There may be good reasons not to do that, but let's have the discussion.)
>
> I'm pretty sure we aren't allowed to redistribute XCode.
>
> As well as gcc and friends, I think XCode also includes various headers
> and/or libraries that we need.
>
> If there is an alternative - especially one that allows us to support
> multiple versions of OS X more easily - then using it may make sense.

You are right, the Xcode install includes many tools as well as headers etc.

What would be the advantage of including gcc and all these other things in GHC?

To simplify the process of installing GHC and to support people with versions of Mac OS X older than the most current. We want to spread the Haskell love as far as possible.
 
Anybody who is halfway serious about developing software on a Mac will have Xcode installed anyway.

You could say the same about people halfway serious about developing software on Windows. But GHC doesn't require you to install MinGW, Cygwin, or Virtual Studio.
 
Besides, as Xcode updates are now available from the Mac App Store,

Not for older versions of Mac OS X.
 
you don't even need to register as a developer with Apple anymore — yes, you need to pay the nominal $5 for the 4GB download.  If you don't want to do that, install the (probably older) version of Xcode that came with the install DVDs of your Mac.

This doesn't solve the problem if the GHC package only supports later versions of Xcode. There has already been at least one difference between Xcode 3 and 4 ( http://hackage.haskell.org/trac/ghc/ticket/5011 ) that caused a problem and there may be others in the future.
 
I don't think you can compare this with the situation on Windows.  Microsoft does not distribute a canonical set of Unix tools that all developers use.

No, but Cygwin and MinGW are available for free and have been around for a long time. Why does GHC bundle MinGW instead of expecting the user to install it herself? Convenience?

I think there is a clear benefit to supporting older versions of Mac OS X. Not everybody upgrades at the same rate that Apple releases new versions. Indeed, Apple's updates occasionally change architecture requirements or break applications, so some people cannot upgrade.

Having a new package bundling GNU tools/libraries doesn't preclude the current package using Xcode. The only good arguments against a new package, that I can see, are the additional work to develop the packaging and the testing, release, and maintenance efforts. Perhaps there are some compatibility concerns, working with other OS X libraries/applications. Of course, these are not at all insignificant issues, but these are the main concerns.

Regards,
Sean