~ 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