summaryrefslogtreecommitdiff
path: root/module/rnrs
diff options
context:
space:
mode:
authorJulian Graham <julian.graham@aya.yale.edu>2010-08-08 20:23:14 -0400
committerJulian Graham <julian.graham@aya.yale.edu>2010-08-08 20:23:14 -0400
commit802b47bdc6232f3726860ce8ae17e4b422061620 (patch)
tree13bd2c834594b75ae454371660b8461cf5a24318 /module/rnrs
parentb24b7deb000ee4108c5e3a0a2cb3d7494973a7a4 (diff)
downloadguile-802b47bdc6232f3726860ce8ae17e4b422061620.tar.gz
Explicit definitions for `memp' and `assp' in `(rnrs list)'; the predicate
argument to Guile's `member' and `assoc' functions has a different expected arity. * module/rnrs/lists.scm (memp, assp): Wrap the predicate function with a two-argument wrapper before calling Guile's underlying implemenation. * test-suite/Makefile.am: Add test-suite/tests/r6rs-lists.test to SCM_TESTS. * test-suite/tests/r6rs-lists.test: New file.
Diffstat (limited to 'module/rnrs')
-rw-r--r--module/rnrs/lists.scm4
1 files changed, 2 insertions, 2 deletions
diff --git a/module/rnrs/lists.scm b/module/rnrs/lists.scm
index c9d913b29..812ce5f98 100644
--- a/module/rnrs/lists.scm
+++ b/module/rnrs/lists.scm
@@ -44,6 +44,6 @@
(define (remv obj list) (remp (lambda (elt) (eqv? obj elt)) list))
(define (remq obj list) (remp (lambda (elt) (eq? obj elt)) list))
- (define (memp pred list) (memp-internal #f list pred))
- (define (assp pred list) (assp-internal #f list pred))
+ (define (memp pred list) (memp-internal #f list (lambda (x y) (pred y))))
+ (define (assp pred list) (assp-internal #f list (lambda (x y) (pred y))))
)