This commit is contained in:
Simon Cruanes 2014-05-12 15:30:13 +02:00
parent fcde09ca24
commit 1f36c9e02b
2 changed files with 15 additions and 1 deletions

2
.gitignore vendored
View file

@ -8,4 +8,4 @@ TAGS
*.docdir
setup.log
setup.data
qtest
qtest*

View file

@ -51,6 +51,14 @@ let of_list l =
let length l = l.f_len + l.r_len
(*$Q
(Q.list Q.small_int) (fun l -> \
l = [] || \
let q = of_list l in \
let _, q = next q in \
length q = List.length l)
*)
let cons x l = make (x::l.front) (l.f_len+1) l.rear l.r_len
let snoc l x = make l.front l.f_len (x::l.rear) (l.r_len+1)
@ -113,6 +121,12 @@ let gen l =
l := l';
Some x
(*$Q
(Q.list Q.small_int) (fun l -> \
l = [] || let q = of_list l in \
gen q |> Gen.take (List.length l) |> Gen.to_list = l)
*)
let seq l k =
let r' = lazy (List.rev l.rear) in
while true do