Isn't this: (define-values (a b) (values (lambda (x) 1) (lambda (x) 2)))
supposed to name things properly already? Robby On Sun, Apr 24, 2011 at 9:44 PM, <ry...@racket-lang.org> wrote: > ryanc has updated `master' from 4aabaeb7af to 8ad54552a1. > http://git.racket-lang.org/plt/4aabaeb7af..8ad54552a1 > > =====[ 2 Commits ]====================================================== > > Directory summary: > 96.6% collects/racket/private/ > 3.3% collects/scribblings/reference/ > > ~~~~~~~~~~ > > fab332a Ryan Culpepper <ry...@racket-lang.org> 2011-04-24 14:27 > : > | let-bind assq, etc for correct object-name > : > M collects/racket/private/list.rkt | 35 ++++++++++++++++++++--------------- > > ~~~~~~~~~~ > > 8ad5455 Ryan Culpepper <ry...@racket-lang.org> 2011-04-24 20:40 > : > | fix references in eopl docs to assq, etc > : > M collects/scribblings/reference/reference.scrbl | 1 + > > =====[ Overall Diff ]=================================================== > > collects/racket/private/list.rkt > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > --- OLD/collects/racket/private/list.rkt > +++ NEW/collects/racket/private/list.rkt > @@ -164,21 +164,26 @@ > (bad-item who a orig-l)))] > [(null? l) #f] > [else (bad-list who orig-l)]))) > - (values > - (lambda (x l) > - (assoc-loop 'assq x l eq?)) > - (lambda (x l) > - (assoc-loop 'assv x l eqv?)) > - (case-lambda > - [(x l) (assoc-loop 'assoc x l equal?)] > - [(x l is-equal?) > - (unless (and (procedure? is-equal?) (procedure-arity-includes? > is-equal? 2)) > - (raise-type-error 'assoc "procedure (arity 2)" is-equal?)) > - (assoc-loop 'assoc x l is-equal?)]) > - (lambda (f l) > - (unless (and (procedure? f) (procedure-arity-includes? f 1)) > - (raise-type-error 'assf "procedure (arity 1)" f)) > - (assoc-loop 'assf #f l (lambda (_ a) (f a))))))) > + (let ([assq > + (lambda (x l) > + (assoc-loop 'assq x l eq?))] > + [assv > + (lambda (x l) > + (assoc-loop 'assv x l eqv?))] > + [assoc > + (case-lambda > + [(x l) (assoc-loop 'assoc x l equal?)] > + [(x l is-equal?) > + (unless (and (procedure? is-equal?) > + (procedure-arity-includes? is-equal? 2)) > + (raise-type-error 'assoc "procedure (arity 2)" is-equal?)) > + (assoc-loop 'assoc x l is-equal?)])] > + [assf > + (lambda (f l) > + (unless (and (procedure? f) (procedure-arity-includes? f 1)) > + (raise-type-error 'assf "procedure (arity 1)" f)) > + (assoc-loop 'assf #f l (lambda (_ a) (f a))))]) > + (values assq assv assoc assf)))) > > ;; fold : ((A B -> B) B (listof A) -> B) > ;; fold : ((A1 ... An B -> B) B (listof A1) ... (listof An) -> B) > > collects/scribblings/reference/reference.scrbl > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > --- OLD/collects/scribblings/reference/reference.scrbl > +++ NEW/collects/scribblings/reference/reference.scrbl > @@ -45,6 +45,7 @@ language. > racket/private/define > racket/private/stx > racket/private/map > + racket/private/list > racket/private/base)]{ > > Unless otherwise noted, the bindings defined in this manual are > _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev