diff --git a/src/ikarus.boot b/src/ikarus.boot index e346a4d..e378c54 100644 Binary files a/src/ikarus.boot and b/src/ikarus.boot differ diff --git a/src/ikarus.core.ss b/src/ikarus.core.ss index 29d367d..971b4e1 100644 --- a/src/ikarus.core.ss +++ b/src/ikarus.core.ss @@ -102,7 +102,6 @@ [else (error 'char-downcase "~s is not a character" c)]))) -(primitive-set! 'cons (lambda (x y) (cons x y))) (primitive-set! 'eq? (lambda (x y) (eq? x y))) diff --git a/src/ikarus.pairs.ss b/src/ikarus.pairs.ss index 44b851b..d5035ed 100644 --- a/src/ikarus.pairs.ss +++ b/src/ikarus.pairs.ss @@ -2,13 +2,16 @@ (library (ikarus pairs) (export + cons car cdr caar cdar cadr cddr caaar cdaar cadar cddar caadr cdadr caddr cdddr caaaar cdaaar cadaar cddaar caadar cdadar caddar cdddar caaadr cdaadr cadadr cddadr caaddr cdaddr cadddr cddddr) (import (only (ikarus) define if lambda pair? error quote let) - (only (scheme) $car $cdr)) + (rename (only (scheme) cons $car $cdr) + (cons sys:cons))) + (define cons (lambda (x y) (sys:cons x y))) (define err (lambda (who x) (error who "invalid list structure ~s" x)))