Show
Ignore:
Timestamp:
08/19/05 10:19:39 (3 years ago)
Author:
luqui
svk:copy_cache_prev:
8581
Message:

r200@feather: fibonaci | 2005-08-19 10:18:41 +0200
Fixed the infinite loop on sub { 1 }.pairs. I did it by removing the IScalar
case on pairsFromRef, so that might have broken something. But that case seemed
to violate the new zer deref semantics.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/Prim/Keyed.hs

    r4934 r6351  
    1414import qualified Data.Map as Map 
    1515import qualified Data.Set as Set 
     16import Debug.Trace 
    1617 
    1718pairsFromVal :: Val -> Eval [Val] 
     
    5960    keys    <- hash_fetchKeys hv 
    6061    elems   <- mapM (hash_fetchElem hv) keys 
     62    --return $ map (VRef . MkRef . IPair) (keys `zip` elems) 
    6163    return $ map (VRef . MkRef . IPair) (keys `zip` elems) 
    6264pairsFromRef (MkRef (IArray av)) = do 
    6365    vals    <- array_fetch av 
    6466    return $ map castV ((map VInt [0..]) `zip` vals) 
    65 pairsFromRef (MkRef (IScalar sv)) = do 
    66     refVal  <- scalar_fetch' sv 
    67     pairsFromVal refVal 
    6867pairsFromRef ref = retError "Not a keyed reference" ref 
    6968