CurryInfo: base-3.4.0 / Data.List.mapAccumR

definition: Info
 
mapAccumR :: (acc -> x -> (acc, y)) -> acc -> [x] -> (acc, [y])
mapAccumR _ s []        =  (s, [])
mapAccumR f s (x:xs)    =  (s'', y:ys)
                           where (s'',y ) = f s' x
                                 (s', ys) = mapAccumR f s xs
demand: Info
 argument 3
deterministic: Info
 deterministic operation
documentation: Info
 
The `mapAccumR` function behaves like a combination of `map` and
`foldr`; it applies a function to each element of a list, passing
an accumulating parameter from right to left, and returning a final
value of this accumulator together with the new list.
failfree: Info
 (_, _, _)
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,_,{[]}) |-> {(,)} || (_,_,{:}) |-> {(,)}}
name: Info
 mapAccumR
precedence: Info
 no precedence defined
result-values: Info
 {(,)}
signature: Info
 (a -> b -> (a, c)) -> a -> [b] -> (a, [c])
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 yes
totally-defined: Info
 reducible on all ground data terms