problem compiling an older Haskell program with GHC 6.6.1
hi, I really appreciate the amazingly fast and helpful feedback to my previous message. that problem (FiniteMap not found) is solved. but a new problem came up... I am trying to compile paradox 1.0, an older (GHC 5) Haskell program, with GHC 6.6.1 (the Solaris 10 / x86 binary distribution). now I get the error Data.hs:760:20: Not in scope: 'bounds' Data.hs is one of the files in the program. here is the nearby code: updateTable :: Hash a = a - IO b - Table a b - IO b updateTable x my (MkTable ref) = do MkHTab n arr - readIORef ref let (_,size) = bounds arr hashx= hash x i= hashx `mod` size ... in case it's helpful, the entire paradox source code is at http://www.cs.sunysb.edu/~stoller/out/paradox-1.0-casc.tar.gz just delete -package lang from the Makefile before running make. any advice would be greatly appreciated. best regards, scott ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: problem compiling an older Haskell program with GHC 6.6.1
On Sat, Jul 07, 2007 at 03:59:48PM -0400, Scott Stoller wrote: hi, I really appreciate the amazingly fast and helpful feedback to my previous message. that problem (FiniteMap not found) is solved. but a new problem came up... I am trying to compile paradox 1.0, an older (GHC 5) Haskell program, with GHC 6.6.1 (the Solaris 10 / x86 binary distribution). now I get the error Data.hs:760:20: Not in scope: 'bounds' Data.hs is one of the files in the program. here is the nearby code: updateTable :: Hash a = a - IO b - Table a b - IO b updateTable x my (MkTable ref) = do MkHTab n arr - readIORef ref let (_,size) = bounds arr hashx= hash x i= hashx `mod` size ... in case it's helpful, the entire paradox source code is at http://www.cs.sunysb.edu/~stoller/out/paradox-1.0-casc.tar.gz just delete -package lang from the Makefile before running make. Bounds was removed in 6.4.x to allow for dynamically sized arrays; it should work as: updateTable :: Hash a = a - IO b - Table a b - IO b updateTable x my (MkTable ref) = do MkHTab n arr - readIORef ref (_,size) - getBounds arr let hashx= hash x i= hashx `mod` size Stefan ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: problem compiling an older Haskell program with GHC 6.6.1
Could not find module `Data.FiniteMap': is this a backwards-compatibility issue between GHC 6.6.1 and older versions of GHC? the module has just vanished from libraries. is there a simple workaround? ugly, but workable: http://dfa.imn.htwk-leipzig.de/cgi-bin/cvsweb/lib/Autolib/Data/Map.hs?rev=1.6 best regards, j.w. ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: problem compiling an older Haskell program with GHC 6.6.1
Hi http://dfa.imn.htwk-leipzig.de/cgi-bin/cvsweb/lib/Autolib/Data/Map.hs?rev=1.6 Or easier: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/FiniteMap-0.1 Thanks Neil ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
problem compiling an older Haskell program with GHC 6.6.1
hi, I am trying to compile paradox 1.0, an older (GHC 5) Haskell program, with GHC 6.6.1 (the Solaris 10 / x86 binary distribution). in case anyone else wants to try it, I put the paradox source code at http://www.cs.sunysb.edu/~stoller/out/paradox-1.0-casc.tar.gz in the Makefile, I deleted -package lang from HFLAGS, and added -v to it. then I typed make. I got the following error message: Glasgow Haskell Compiler, Version 6.6.1, for Haskell 98, compiled by GHC version 6.6.1 Using package config file: /usr/local/lib/ghc-6.6.1/package.conf wired-in package base mapped to base-2.1.1 wired-in package rts mapped to rts-1.0 wired-in package haskell98 mapped to haskell98-1.0 wired-in package template-haskell mapped to template-haskell-2.1 Hsc static flags: -static Created temporary directory: /tmp/ghc13306_0 *** Chasing dependencies: Set.hs:26:7: Could not find module `Data.FiniteMap': locations searched: Data/FiniteMap.hs Data/FiniteMap.lhs *** Deleting temp files: Deleting: /tmp/ghc13306_0/ghc13306_0.dep *** Deleting temp dirs: Deleting: /tmp/ghc13306_0 make: *** [depend.mak] Error 1 is this a backwards-compatibility issue between GHC 6.6.1 and older versions of GHC? is there a simple workaround? I can't easily use an older version of GHC, because I don't see binary distributions of older versions of GHC for Solaris x86. any advice would be greatly appreciated. best regards, scott ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users