blob: 22c24328b06f53f3bba6f53ccc2f3f83767514cf [file]
sumList : rec t {l : <Cons {data : U32,rest : rec t!}#|Nil Unit>}! -> U32;
sumList r = take r2 { l = z } = r : rec t {l : <Cons {data : U32,rest : rec t!}#
|Nil Unit>}!
in case z : <Cons {data : U32,rest : rec t!}#|Nil Unit> of
Nil u -> 0 : U32
| v2 -> case v2 : <Cons {data : U32,rest : rec t!}#
|Nil Unit take> of
Cons s -> take s2 { rest = x } = s : {data : U32
,rest : rec t {l : <Cons {data : U32
,rest : rec t!}#
|Nil Unit>}!}#
in ((s : {data : U32
,rest : rec t!}#).data : U32) + ((sumList[ ] : rec t {l : <Cons {data : U32
,rest : rec t!}#
|Nil Unit>}!
-> U32) (x : rec t {l : <Cons {data : U32
,rest : rec t!}#
|Nil Unit>}!) : U32) : U32
end : U32
end : U32
end : U32
end : U32;