Changeset 2956 for src/Pugs/Bind.hs

Show
Ignore:
Timestamp:
05/11/05 02:17:58 (4 years ago)
Author:
autrijus
svk:copy_cache_prev:
4498
Message:

* Initial sketch of class and object support.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/Bind.hs

    r2852 r2956  
    2626          -> [Param] -- ^ List of parameters to try binding; includes both 
    2727                     --     named params and positional params 
    28           -> (Bindings, [Exp], [Param]) -- ^ Bindings made; remaining (unbound) 
    29                                         --     named args; remaining 
    30                                         --     (positional) params 
     28          -> (Bindings, [Exp], [Param]) -- ^ Bindings made; 
     29                                        --   remaining (unbound) named args; 
     30                                        --   remaining (positional) params 
    3131bindNames exps prms = (bound, exps', prms') 
    3232    where 
     
    3737        = ( ((prm, exp) : bound), exps ) 
    3838        | otherwise 
    39         = ( bound, (exp:exps) ) 
     39        = ( bound, (Syn "=>" [Val (VStr name), exp]:exps) ) 
    4040 
    4141emptyHashExp :: Exp 
     
    5959    first <- (bindHash vs [p]) 
    6060    return $ first ++ (ps `zip` repeat emptyHashExp) 
    61 bindHash vs [p]         = return [ (p, Syn "\\{}" vs) ] -- XXX cast to Hash 
     61bindHash vs [p]         = return [ (p, Syn "\\{}" [Syn "," vs]) ] -- XXX cast to Hash 
    6262 
    6363bindArray :: [Exp] -> [Param] -> SlurpLimit -> MaybeError (Bindings, SlurpLimit)