Re: Three patches for cabal

2009-06-19 Thread Ian Lynagh
On Wed, Jun 17, 2009 at 10:24:48AM +0100, Duncan Coutts wrote:
 
 Deprecating PatternSignatures seems uncontroversial, but the
 NoMonoPatBinds is potentially controversial. GHC essentially uses
 -XMonoPatBinds by default, even in H98 mode, and the user can use
 -XNoMonoPatBinds to restore H98 behaviour. Niklas's and my point is that
 the list of language extensions in Language.Haskell.Exceptions are
 differences from H98 so it should be MonoPatBinds to get the difference
 not NoMonoPatBinds to restore H98.
 
 In practise, since ghc uses MonoPatBinds by default it'd mean that
 people who want to get back to H98 would need to use:
 
   ghc-options: -XNoMonoPatBinds

I think that Cabal should allow any extension to be listed as either Foo
or NoFoo, just as GHC does in a -X flag or a LANGUAGE pragma.

This will also be useful if we get extension groups like Haskell'2009
and Haskell'2010, where you might want to say something like:
Haskell'2010 minus ExistentialQuantification


Thanks
Ian

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: build question: ghc 6.11.20090605 - ghc 6.10.3?

2009-06-19 Thread Ian Lynagh

Hi Uwe,

Sorry for the slow response.

On Sun, Jun 07, 2009 at 03:04:44PM -0700, Uwe Hollerbach wrote:
 Hi, all, is it expected that a snapshot version (I'm using 2009.06.05)
 should be able to build the released version 6.10.3?

No: In order to compile the 6.10.3 release you need to use a released
version of GHC between version 6.6 and version 6.10.3 (inclusive).

 This weekend I
 tried the porting to an unsupported machine procedure with the
 aforementioned snapshot version; that worked, after some fussing, and
 I seem to have a working ghc install, including several libraries and
 cabal.

Great!

 But I tried building the Haskell Platform, and it warns
 (rightly, as it turns out) about this being an unsupported version of
 ghc. So I'd like to get onto the regular release train, as it were,
 and transfer myself to ghc 6.10.3.

In order to do this, you'd have to get your hands dirty. The 6.10.3
source didn't know what differences there would be in your snapshot, so
it doesn't have any support for them. You'd need to add this support to
the 6.10.3 build system.

If you've got cabal-install working then you can just cabal-install the
libraries that you want, of course. You may have problems with some of
them not working due to the changes in your snapshot, though.

When 6.12.1 is released you might be able to compile it with your
snapshot, but that isn't guaranteed. It's likely to be easier than
building 6.10.3 would be, though. If nothing else, the porting procedure
will work for 6.12.1.

 PS I suppose I should describe in a little bit of detail what I did
 for the porting, might be useful for someone else trying this. It was
 a rather vanilla port, x86_64-unknown-linux to same; my target machine
 is my workstation at work, where I don't have root, and I do have
 permission from IT to install this stuff, but no support... so they
 won't install rpms for me, or anything like that. It's also a slightly
 old and somewhat customized version of some RedHat corporate release,
 so recent plain-vanilla tarballs didn't work... hence the need to
 port.

Another possibility would be to go back to the tarball of an earlier
version of GHC, and then to use that to compile the newer version.

 The third issue was the sed syntax on the same page: the version of
 sed that I was using didn't like the space between the -i and the
 .bak. I don't know if that's a variation from one version of sed to
 another, or a typo on the page, or??? Again no big deal, the error
 message from sed was informative enough for me to figure out what to
 do.

I've removed the space, thanks.


Thanks
Ian

___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users