Changeset 8207 for src/Pugs/Monads.hs
- Timestamp:
- 12/13/05 11:24:11 (3 years ago)
- Files:
-
- 1 modified
-
src/Pugs/Monads.hs (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Pugs/Monads.hs
r7190 r8207 54 54 (Subsequent chained 'Eval's do /not/ see this new scope.) 55 55 -} 56 enterLex :: [Pad -> Pad] -- ^ Transformations on current 'Pad' to produce the56 enterLex :: [PadMutator] -- ^ Transformations on current 'Pad' to produce the 57 57 -- new 'Pad'. 58 58 -> Eval a -- ^ Evaluation to be performed in the new scope … … 167 167 -- (must have leading @&@ sigil) 168 168 -> ([Val] -> Eval Val) -- ^ The actual primitive to wrap 169 -> ( (Pad -> Pad) -> m t)-- ^ A (lambda) function that the 'Pad'169 -> (PadMutator -> m t) -- ^ A (lambda) function that the 'Pad' 170 170 -- transformer is given to 171 171 -> m t -- ^ Result of passing the pad-transformer to the \'action\' … … 188 188 -} 189 189 genSymCC :: String -- ^ Name of the primitive in the symbol table ('Pad'). 190 -> ( (Pad -> Pad) -> Eval Val)-- ^ An \'action\' function that will190 -> (PadMutator -> Eval Val) -- ^ An \'action\' function that will 191 191 -- take the pad-transformer and use 192 192 -- it to perform some evaluation … … 263 263 } 264 264 265 genSubs :: t -> Var -> (t -> VCode) -> Eval [Pad -> Pad]265 genSubs :: t -> Var -> (t -> VCode) -> Eval [PadMutator] 266 266 genSubs env name gen = sequence 267 267 [ genMultiSym name (codeRef $ gen env)
