CurryInfo: base-3.4.0 / Prelude.span

definition: Info
 
span :: (a -> Bool) -> [a] -> ([a], [a])
span _ []     = ([], [])
span p (x:xs) | p x       = let (ys, zs) = span p xs in (x : ys, zs)
              | otherwise = ([], x : xs)
demand: Info
 argument 2
deterministic: Info
 deterministic operation
documentation: Info
 
`span p xs` is equivalent to `(takeWhile p xs, dropWhile p xs)`
failfree: Info
 (_, _)
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {(_,{[]}) |-> {(,)} || (_,{:}) |-> {(,)}}
name: Info
 span
precedence: Info
 no precedence defined
result-values: Info
 {(,)}
signature: Info
 (a -> Bool) -> [a] -> ([a], [a])
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 yes
totally-defined: Info
 possibly non-reducible on same data term