1-- | Spine and element strict list
2module Control.Distributed.Process.Internal.StrictList
8import Prelude hiding (length, reverse, foldr)
12 = Cons !a !(StrictList a)
14 | Snoc !(StrictList a) !a
15 | Append !(StrictList a) !(StrictList a)
17append :: StrictList a -> StrictList a -> StrictList a
20append l1 l2 = l1 `Append` l2
22foldr :: (a -> b -> b) -> b -> StrictList a -> b
23foldr f c0 xs0 = go xs0 c0
25 go (Cons x xs) c = f x (go xs c)
26 go (Snoc xs x) c = go xs (f x c)
27 go (Append xs ys) c = go xs (go ys c)
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list