Dear  Hugs-Feb-2000,

loading my large project, you report 
  ...  
  Reading file "/home/mechvel/docon/2.01/docon/source/pol/Pol1_.hs":
  Reading file "/home/mechvel/docon/2.01/docon/source/pol/EPol0_.hs":
  Parsing
  ERROR "/home/mechvel/docon/2.01/docon/source/pol/EPol0_.hs" 
   (line 391): Syntax error in input (unexpected keyword "instance")
  Pol1_>

while GHC makes the project successfully.

The related fragment, - before `instance', - is


--------------------------------------------------------------------
...
epolneg_ :: (AddGroup a) => EPol a -> EPol a
epolneg_                    f  = ct f [(neg a,p)| (a,p)<-epolMons f]

{-# specialize epolneg_ :: EPol Z -> EPol Z #-}

epoladd_ :: (AddGroup a) => EPol a -> EPol a -> EPol a

epoladd_ (EPol ms o pol) g = case (zeroS $ sample pol, eppoECp o) of

  (z,cp) -> ct g $ epa ms $ epolMons g
    where
    epa []      msG     = msG
    epa msF     []      = msF
    epa (m:msf) (n:msg) =
      let
        { (a,p) = m; (b,q) = n;  c = add a b }
      in
      case  cp p q
      of
        GT -> m:(epa msf (n:msg))
        LT -> n:(epa (m:msf) msg)
        _  -> if  c==z  then  epa msf msg  else  (c,p):(epa msf msg)

epoltimes_ :: (Ring a) => (a -> j -> a) -> EPol a -> j -> EPol a
epoltimes_                t                f         n =
                              ctr f
                                  [(t a n, e) | (a,e) <- epolMons f]
  -- t = `times' on `a'

instance (CommutativeRing a) => Show (EPol a)
  where
  showsPrec _ (EPol ms _ f) =
                       case  [(i, ct f (a,p)) | (a,(i,p)) <- ms]  of

             indexedPols -> ("(EPol "++).shows indexedPols .(" )"++)
...
--------------------------------------------------------------------

The project is large, contains overlapping instances and other 
advanced features.
Hugs  is called by
 .../hugs ' -98 +o -h3000K  -P\{Hugs\}/lib:\{Hugs\}/lib/hugs:\{Hugs\}
 /lib/exts:'$doconSrc'..:'$doconSrc':'$doconSrc'auxil:'$doconSrc'lin:
 '$doconSrc'parse:'$doconSrc'pol:'$doconSrc'pol/factor:
 '$doconSrc'pol/symmfunc:'$doconSrc'residue:'$doconSrc'demotest'

This is  Linux, Debian, i386-unknown.

There are needed large Program code and Control stack. Therefore, I 
had set in  prelude.h
  #define NUM_STACK          Pick(1800,   12000,      48000)
                                                      -----
  #define NUM_ADDRS          Pick(28000,  60000,      960000)
                                                      ------
before `make install'. 

By the way, if the user needs more space for the program, for 
control stack, then, is one supposed to intrude into  prelude.h ?

------------------
Sergey Mechveliani
[EMAIL PROTECTED]







Reply via email to