Changeset 11585 for src/Pugs/Prim/List.hs
- Timestamp:
- 07/17/06 18:46:52 (2 years ago)
- Files:
-
- 1 modified
-
src/Pugs/Prim/List.hs (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Pugs/Prim/List.hs
r10356 r11585 316 316 | VRef x' <- x 317 317 = doHyper =<< readRef x' 318 | VList x' <- x 319 = op1HyperPrefix sub x 318 320 | otherwise 319 321 = enterEvalContext cxtItemAny $ App (Val $ VCode sub) Nothing [Val x] … … 344 346 = fail "Hyper OP only works on lists" 345 347 where 346 doHyper x y = enterEvalContext cxtItemAny $ App (Val $ VCode sub) Nothing [Val x, Val y] 348 doHyper x y 349 | VRef x' <- x, VRef y' <- y 350 = join $ liftM2 doHyper (readRef x') (readRef y') 351 | VRef x' <- x 352 = (flip doHyper $ y) =<< readRef x' 353 | VRef y' <- y 354 = doHyper x =<< readRef y' 355 | VList x' <- x 356 = op2Hyper sub x y 357 | VList y' <- y 358 = op2Hyper sub x y 359 | otherwise 360 = enterEvalContext cxtItemAny $ App (Val $ VCode sub) Nothing [Val x, Val y] 347 361 hyperLists [] [] = return [] 348 362 hyperLists xs [] = return xs
