ANNOUNCE: GHC 6.8.3 Release Candidate
Serge D. Mechveliani
mechvel at botik.ru
Thu May 29 07:48:36 EDT 2008
On Thu, May 29, 2008 at 10:44:40AM +0100, Ian Lynagh wrote:
>
> Hi Serge,
>
> On Wed, May 28, 2008 at 10:28:58PM +0400, Serge D. Mechveliani wrote:
> > No, ghc-6.8.2.20080527-src.tar.bz2 (`made' on Debian Linux, i686)
> > does not work.
> > See DoCon-2.11.
> > It compiles DoCon-2.11 with taking too much memory (> 300 Mb) and
> > 3-4 times more of time than ghc-6.8.2.
> > And then, the test fails.
>
> Thanks for the feedback! Can you please send us complete instructions
> for reproducing the problem, along with the output that you are seeing?
Take the public docon-2.11 (for example, from www.haskell/ghc/docon/)
and follow its instruction install.txt.
Let us call ghc-6.8.2.20080527 may27.
1) In ghc-6.8.2, it suffices -M300m to build,
and may27 needs more -- change it to -M700m -K99m
in source/docon.cabal.
2) 6.8.2 builds DoCon 3 times faster.
3) The size of libHSdocon-2.11.a in 6.8.2 is about 14.2 Mb,
in may27 it is about 16.7 Mb.
4) The module RsePol_.hs (close to the end of `make') takes
particularly long to compile.
5) Build and run source/demotest/Main as it is described in
install.txt
( cd source/demotest
ghc $doconCpOpt --make Main
./Main +RTS -M60m -RTS
)
ghc-6.8.2 runs it all right, and may27 reports
-------------------------------------------------
Permutation group S = S(n)
===============
List all permutations p from S and test each p as follows
cG = cyclicGroup(p) in S(n)
cycles = [cl(1)..cl(k)] = decomposition of p to cycles
Verify
0 < card cG <= card S,
cG is free of repetitions and contains unity,
composition of cycles == p,
lcM (map length cycles) == card cG.
And for n, test osetCard S == n!
Do this all for n <- [1..nN]. Here nN = 7.
--- RESULT:
[[True,True],[True,True],[True,True],[True,True],[True,True],
[True,True],[True,True]]
Integer factorization and List of primes test - sieve and other
--- RESULT:
[True,True]
Properties and division in a residue ring Z/(b)
- modelled as ResidueE Z:
--- RESULT:
[True,True]
Arithmetic in P = Z[z,y,x] and in Z[x][y][z].
The isomorphism test for these domains: verify
(^n) == fromP .(^n) .toP
--- RESULT:
Main: fromInteger to (Pol ..): use fromi
--------------------------------------------------------------------
It breaks in the first half of the test.
The reason may be, for example, in different treatment of overlapping
instances.
As to the DoCon message fromInteger to (Pol ..): use fromi
,
it means a run-time error:
the code tries to make a polynomial :: (Pol _) from an Integer value
by applying fromInteger, while DoCon allows for this only the
operation `fromi'.
Here (^n) in fromP .(^n) .toP
(in one of the test modules in demotest/) is powering a polynomial to
the degree n :: Integer. I am not sure, but the impression is that
the code tries to convert n to the type (Pol _), which it must not
do.
6.8.2 is correct here, and may27 maybe, confuses types or instances,
I do not know.
Regards,
-----------------
Serge Mechveliani
mechvel at botik.ru
More information about the Glasgow-haskell-users
mailing list