Added remf to unstable/list.
Signed-off-by: Jay McCarthy <jay@racket-lang.org>
This commit is contained in:
parent
7c5973cb94
commit
c9d0bd10a1
9
collects/tests/unstable/list.rkt
Normal file
9
collects/tests/unstable/list.rkt
Normal file
|
@ -0,0 +1,9 @@
|
|||
#lang scheme
|
||||
(require unstable/list)
|
||||
(require tests/eli-tester)
|
||||
(test
|
||||
(remf positive? '()) => '()
|
||||
(remf positive? '(1 -2 3 4 -5)) => '(-2 3 4 -5)
|
||||
(remf even? '(1 -2 3 4 -5)) => '(1 3 4 -5)
|
||||
(remf (λ (x) #f) '(1 -2 3 4 -5)) => '(1 -2 3 4 -5))
|
||||
|
|
@ -112,3 +112,13 @@
|
|||
|
||||
(provide map/values)
|
||||
|
||||
;; dvanhorn added:
|
||||
|
||||
(define (remf f ls)
|
||||
(cond [(null? ls) '()]
|
||||
[(f (car ls)) (cdr ls)]
|
||||
[else
|
||||
(cons (car ls)
|
||||
(remf f (cdr ls)))]))
|
||||
|
||||
(provide/contract [remf (-> procedure? list? list?)])
|
||||
|
|
|
@ -103,3 +103,18 @@ Produces lists of the respective values of @racket[f] applied to the elements in
|
|||
|
||||
}
|
||||
|
||||
@addition{David Van Horn}
|
||||
|
||||
@defproc[(remf [pred procedure?]
|
||||
[lst list?])
|
||||
list?]{
|
||||
Returns a list that is like @racket[lst], omitting the first element of @racket[lst]
|
||||
for which @racket[pred] produces a true value.
|
||||
|
||||
@defexamples[
|
||||
#:eval the-eval
|
||||
(remf negative? '(1 -2 3 4 -5))
|
||||
]
|
||||
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user