[Haskell-cafe] fyi GHC 7.2.1 release on the benchmarks game

2011-08-12 Thread Isaac Gouy
1) Some of the GHC programs contributed to the benchmarks game have problems 
with recent GHC releases

- meteor-contest #5 - Ambiguous occurrence `permutations'

http://shootout.alioth.debian.org/u64q/program.php?test=meteorlang=ghcid=5#log


- regex-dna #2 - Precedence parsing error

http://shootout.alioth.debian.org/u64q/program.php?test=regexdnalang=ghcid=2#log


- reverse-complement #2 - parse error on input `-'

http://shootout.alioth.debian.org/u64q/program.php?test=revcomplang=ghcid=2#log


- reverse-complement #3 - Could not find module `Monad'

http://shootout.alioth.debian.org/u64q/program.php?test=revcomplang=ghcid=3#log


2) I noticed `-fvia-C` has now gone away and there were half-a-dozen programs 
that had been written to use `-fvia-C` so how might that effect performance of 
those programs?


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] fyi GHC 7.2.1 release on the benchmarks game

2011-08-12 Thread austin seipp
Hello Isaac,

On Fri, Aug 12, 2011 at 10:18 AM, Isaac Gouy igo...@yahoo.com wrote:
 1) Some of the GHC programs contributed to the benchmarks game have problems 
 with recent GHC releases

 - meteor-contest #5 - Ambiguous occurrence `permutations'

 http://shootout.alioth.debian.org/u64q/program.php?test=meteorlang=ghcid=5#log

This can be fixed by changing the line:

import Data.List

to:

import Data.List hiding (permutations)

Also, the program needs to be compiled with -XBangPatterns

 - regex-dna #2 - Precedence parsing error

 http://shootout.alioth.debian.org/u64q/program.php?test=regexdnalang=ghcid=2#log

This can be fixed by changing this line (line 74):

mapM_ putStrLn $ results `using` parList rdeepseq

to:

mapM_ putStrLn (results `using` parList rdeepseq)

There are also some deprecation warnings related to `rwhnf` among
others being renamed, but those are harmless (may want to fix them
anyway though.)

 - reverse-complement #2 - parse error on input `-'

 http://shootout.alioth.debian.org/u64q/program.php?test=revcomplang=ghcid=2#log


You can fix this by adding this pragma:

{-# LANGUAGE MagicHash, UnboxedTuples #-}

or compiling with -XMagicHash and -XUnboxedTuples

Also, this program imports 'GHC.IOBase' which is a warning, that
import should be changed to 'GHC.IO' instead.

 - reverse-complement #3 - Could not find module `Monad'

 http://shootout.alioth.debian.org/u64q/program.php?test=revcomplang=ghcid=3#log

You can fix this one by adding this pragma to the top of revcomp.hs

{-# LANGUAGE BangPatterns #-}

Alternatively you can compile with -XBangPatterns. Also, change the line

import Monad

to:

import Control.Monad

 2) I noticed `-fvia-C` has now gone away and there were half-a-dozen programs 
 that had been written to use `-fvia-C` so how might that effect performance 
 of those programs?

I can't forsee the potential performance ramifications, but frankly
-fvia-C has been deprecated/not-advised-for-use for quite a while now,
and I wonder how many of these programs just have not been
updated/tested with the native code generator since they were written.

In any case it's not an option anymore, so your only choice is to nuke
it from orbit (orbit being the Makefiles.)

-- 
Regards,
Austin

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] fyi GHC 7.2.1 release on the benchmarks game

2011-08-12 Thread Chris Smith
On Fri, 2011-08-12 at 11:44 -0500, austin seipp wrote:
  2) I noticed `-fvia-C` has now gone away [...]
 
 I can't forsee the potential performance ramifications, but frankly
 -fvia-C has been deprecated/not-advised-for-use for quite a while now,
 and I wonder how many of these programs just have not been
 updated/tested with the native code generator since they were written.
 
 In any case it's not an option anymore, so your only choice is to nuke
 it from orbit (orbit being the Makefiles.)

Well, the better option would be to try with the NCG, and also with LLVM
(the -fllvm flag).  While the NCG is certainly competitive for idiomatic
Haskell code, it's likely to be a bit behind when it comes to heavy
C-in-Haskell code like what often gets submitted to the shootout.  LLVM
seems likely to do better in some cases.

-- 
Chris


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] fyi GHC 7.2.1 release on the benchmarks game

2011-08-12 Thread Henning Thielemann

On 12.08.2011 18:44, austin seipp wrote:

Hello Isaac,

On Fri, Aug 12, 2011 at 10:18 AM, Isaac Gouyigo...@yahoo.com  wrote:

1) Some of the GHC programs contributed to the benchmarks game have problems 
with recent GHC releases

- meteor-contest #5 - Ambiguous occurrence `permutations'

http://shootout.alioth.debian.org/u64q/program.php?test=meteorlang=ghcid=5#log


This can be fixed by changing the line:

import Data.List

to:

import Data.List hiding (permutations)


... and enabling the warning
  -fwarn-missing-import-lists
in order to be warned about such imports ...

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] fyi GHC 7.2.1 release on the benchmarks game

2011-08-12 Thread Isaac Gouy


--- On Fri, 8/12/11, austin seipp a...@hacks.yi.org wrote:

Thanks, I do like easy fixes :-)


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe