From f158326c9e5897d633315f39642b098a5bf1b8ed Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 26 Mar 2015 13:26:35 -0400 Subject: [PATCH] =?UTF-8?q?Added=20boolean=3D=3F?= --- trans.scm | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/trans.scm b/trans.scm index 93b10bc7..f952e338 100644 --- a/trans.scm +++ b/trans.scm @@ -163,16 +163,20 @@ (let ((kth (list-tail lst k))) (set-car! kth obj))) (define (reverse lst) (foldl cons '() lst)) + (define (boolean=? b1 b2 . bs) + (Cyc-obj=? boolean? b1 (cons b2 bs))) (define (symbol=? sym1 sym2 . syms) + (Cyc-obj=? symbol? sym1 (cons sym2 syms))) + (define (Cyc-obj=? type? obj objs) (and - (eq? sym1 sym2) + (type? obj) (call/cc (lambda (return) (for-each - (lambda (s) - (if (not (eq? s sym1)) + (lambda (o) + (if (not (eq? o obj)) (return #f))) - syms) + objs) #t)))) (define (error msg . args) (raise (cons msg args)))