~ chicken-core (chicken-5) b8f2531c3805e1109bf50c6b0de7ff1f00844cfc
commit b8f2531c3805e1109bf50c6b0de7ff1f00844cfc Author: felix <felix@call-with-current-continuation.org> AuthorDate: Sat Feb 5 00:27:29 2011 +0100 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Sat Feb 5 00:27:29 2011 +0100 added a few specialiations; tests diff --git a/types.db b/types.db index 9d791d46..4379b1de 100644 --- a/types.db +++ b/types.db @@ -27,8 +27,10 @@ ;; scheme (not (procedure not (*) boolean) - ((not boolean) #t)) -(boolean? (procedure boolean (*) boolean)) + (((not boolean)) '#t)) +(boolean? (procedure boolean? (*) boolean) + ((boolean) '#t) + (((not boolean)) '#f)) (eq? (procedure eq? (* *) boolean)) (eqv? (procedure eqv? (* *) boolean)) (equal? (procedure equal? (* *) boolean)) @@ -111,15 +113,20 @@ (/ (procedure / (number #!rest number) number) ((float float) (fp/ #(1) #(2)))) (= (procedure = (#!rest number) boolean) + ((fixnum fixnum) (eq? #(1) #(2))) ((float float) (fp= #(1) #(2)))) (> (procedure > (#!rest number) boolean) + ((fixnum fixnum) (fx> #(1) #(2))) ((float float) (fp> #(1) #(2)))) (< (procedure < (#!rest number) boolean) + ((fixnum fixnum) (fx< #(1) #(2))) ((float float) (fp< #(1) #(2)))) (>= (procedure >= (#!rest number) boolean) + ((fixnum fixnum) (fx>= #(1) #(2))) ((float float) (fp>= #(1) #(2)))) (<= (procedure <= (#!rest number) boolean) - ((float float) (fp<0 #(1) #(2)))) + ((fixnum fixnum) (fx<= #(1) #(2))) + ((float float) (fp<= #(1) #(2)))) (quotient (procedure quotient (number number) number)) (remainder (procedure remainder (number number) number)) (modulo (procedure modulo (number number) number))Trap