diff --git a/collects/unstable/scribblings/sequence.scrbl b/collects/unstable/scribblings/sequence.scrbl index 9c9057ee3c..7fd1c83783 100644 --- a/collects/unstable/scribblings/sequence.scrbl +++ b/collects/unstable/scribblings/sequence.scrbl @@ -28,7 +28,7 @@ Produces a sequence equivalent to @scheme[(syntax->list lst)]. @defproc[(in-pairs [seq sequence?]) sequence?]{ Produces a sequence equivalent to - @scheme[(in-parallel (lift car seq) (lift cdr seq))]. + @scheme[(in-parallel (sequence-lift car seq) (sequence-lift cdr seq))]. } @defproc[(in-sequence-forever [seq sequence?] [val any/c]) sequence?]{ @@ -37,4 +37,7 @@ Produces a sequence whose values are the elements of @scheme[seq], followed by @ @defproc[(sequence-lift [f procedure?] [seq sequence?]) sequence?]{ Produces the sequence of @scheme[f] applied to each element of @scheme[seq]. +@examples[#:eval the-eval +(for/list ([x (sequence-lift add1 (in-range 10))]) + x)] } \ No newline at end of file diff --git a/collects/unstable/sequence.ss b/collects/unstable/sequence.ss index 7b58201904..22851e4bf8 100644 --- a/collects/unstable/sequence.ss +++ b/collects/unstable/sequence.ss @@ -37,7 +37,7 @@ (make-do-sequence (lambda () (let-values ([(more? gen) (sequence-generate seq)]) - (values (lambda (e) (compose f gen)) + (values (lambda (e) (f (gen))) (lambda (_) #t) #t (lambda (_) (more?)) diff --git a/collects/unstable/struct.ss b/collects/unstable/struct.ss index 9a272bddad..1640c56e77 100644 --- a/collects/unstable/struct.ss +++ b/collects/unstable/struct.ss @@ -35,9 +35,10 @@ (unless (= num-provided num-slots) (raise-syntax-error #f - (format "wrong number of arguments for struct ~s (expected ~s)" + (format "wrong number of arguments for struct ~s (expected ~s, got ~s)" (syntax-e #'S) - num-slots) + num-slots + num-provided) stx))) (with-syntax ([constructor constructor]) (syntax-property #'(constructor expr ...)