Changeset 10

Show
Ignore:
Timestamp:
02/11/05 12:08:35 (4 years ago)
Author:
autrijus
svk:copy_cache_prev:
1041
Message:

fix op0 prim dispatching

Location:
src
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • src/Pretty.hs

    r8 r10  
    4343    pretty (VError x y) = "*** Error: " ++ x ++ "\n    in " ++ show y 
    4444    pretty (VArray (MkArray x)) = pretty (VList x) 
     45    pretty (VHash (MkHash x)) = show x 
    4546    pretty VUndef = "undef" 
    4647 
  • src/Prim.hs

    r9 r10  
    177177    f :: [Val] -> Val 
    178178    f    = case arity of 
    179         0 -> op0 sym 
     179        0 -> \(x:_) -> op0 sym (vCast x) 
    180180        1 -> \[x]   -> op1 sym (vCast x) 
    181181        2 -> \[x,y] -> op2 sym (vCast x) (vCast y) 
     
    198198    prms = map takeWord prms' 
    199199 
    200 doFoldParam cxt [] []       = [buildParam cxt "" "$x" (Val VUndef)] 
     200doFoldParam cxt [] []       = [buildParam cxt "" "$a" (Val VUndef)] 
    201201doFoldParam cxt [] (p:ps)   = (buildParam cxt "" (strInc $ paramName p) (Val VUndef):p:ps) 
    202202doFoldParam cxt (s:name) ps = (buildParam cxt [s] name (Val VUndef) : ps) 
    203203 
    204204foldParam :: String -> Params -> Params 
    205 foldParam "List" = doFoldParam "List" "*@_" 
     205foldParam "List" = doFoldParam "List" "*@x" 
    206206foldParam _      = doFoldParam "Scalar" "" 
    207207