commit
						dda989ac94
					
				| 
						 | 
					@ -2146,14 +2146,14 @@
 | 
				
			||||||
;; tests are run by default - need to cond-expand and test for
 | 
					;; tests are run by default - need to cond-expand and test for
 | 
				
			||||||
;; infinities and -0.0.
 | 
					;; infinities and -0.0.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; (define-syntax test-numeric-syntax
 | 
					(define-syntax test-numeric-syntax
 | 
				
			||||||
;;   (syntax-rules ()
 | 
					  (syntax-rules ()
 | 
				
			||||||
;;     ((test-numeric-syntax str expect strs ...)
 | 
					    ((test-numeric-syntax str expect strs ...)
 | 
				
			||||||
;;      (let* ((z (read (open-input-string str)))
 | 
					     (let* ((z (read (open-input-string str)))
 | 
				
			||||||
;;             (out (open-output-string))
 | 
					            (out (open-output-string))
 | 
				
			||||||
;;             (z-str (begin (write z out) (get-output-string out))))
 | 
					            (z-str (begin (write z out) (get-output-string out))))
 | 
				
			||||||
;;        (test expect (values z))
 | 
					       (test expect (values z))
 | 
				
			||||||
;;        (test #t (and (member z-str '(str strs ...)) #t))))))
 | 
					       (test #t (and (member z-str '(str strs ...)) #t))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Each test is of the form:
 | 
					;; Each test is of the form:
 | 
				
			||||||
;;
 | 
					;;
 | 
				
			||||||
| 
						 | 
					@ -2170,20 +2170,20 @@
 | 
				
			||||||
;;   (test-numeric-syntax input-str expected-value (input-str))
 | 
					;;   (test-numeric-syntax input-str expected-value (input-str))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Simple
 | 
					;; Simple
 | 
				
			||||||
;; (test-numeric-syntax "1" 1)
 | 
					(test-numeric-syntax "1" 1)
 | 
				
			||||||
;; (test-numeric-syntax "+1" 1 "1")
 | 
					;; (test-numeric-syntax "+1" 1 "1")
 | 
				
			||||||
;; (test-numeric-syntax "-1" -1)
 | 
					(test-numeric-syntax "-1" -1)
 | 
				
			||||||
;; (test-numeric-syntax "#i1" 1.0 "1.0" "1.")
 | 
					;; (test-numeric-syntax "#i1" 1.0 "1.0" "1.")
 | 
				
			||||||
;; (test-numeric-syntax "#I1" 1.0 "1.0" "1.")
 | 
					;; (test-numeric-syntax "#I1" 1.0 "1.0" "1.")
 | 
				
			||||||
;; (test-numeric-syntax "#i-1" -1.0 "-1.0" "-1.")
 | 
					;; (test-numeric-syntax "#i-1" -1.0 "-1.0" "-1.")
 | 
				
			||||||
;; ;; Decimal
 | 
					;; ;; Decimal
 | 
				
			||||||
;; (test-numeric-syntax "1.0" 1.0 "1.0" "1.")
 | 
					(test-numeric-syntax "1.0" 1.0 "1.0" "1.")
 | 
				
			||||||
;; (test-numeric-syntax "1." 1.0 "1.0" "1.")
 | 
					(test-numeric-syntax "1." 1.0 "1.0" "1.")
 | 
				
			||||||
;; (test-numeric-syntax ".1" 0.1 "0.1" "100.0e-3")
 | 
					(test-numeric-syntax ".1" 0.1 "0.1" "100.0e-3")
 | 
				
			||||||
;; (test-numeric-syntax "-.1" -0.1 "-0.1" "-100.0e-3")
 | 
					(test-numeric-syntax "-.1" -0.1 "-0.1" "-100.0e-3")
 | 
				
			||||||
;; ;; Some Schemes don't allow negative zero. This is okay with the standard
 | 
					;; ;; Some Schemes don't allow negative zero. This is okay with the standard
 | 
				
			||||||
;; (test-numeric-syntax "-.0" -0.0 "-0." "-0.0" "0.0" "0." ".0")
 | 
					(test-numeric-syntax "-.0" -0.0 "-0." "-0.0" "0.0" "0." ".0")
 | 
				
			||||||
;; (test-numeric-syntax "-0." -0.0 "-.0" "-0.0" "0.0" "0." ".0")
 | 
					(test-numeric-syntax "-0." -0.0 "-.0" "-0.0" "0.0" "0." ".0")
 | 
				
			||||||
;; (test-numeric-syntax "#i1.0" 1.0 "1.0" "1.")
 | 
					;; (test-numeric-syntax "#i1.0" 1.0 "1.0" "1.")
 | 
				
			||||||
;; (test-numeric-syntax "#e1.0" 1 "1")
 | 
					;; (test-numeric-syntax "#e1.0" 1 "1")
 | 
				
			||||||
;; (test-numeric-syntax "#e-.0" 0 "0")
 | 
					;; (test-numeric-syntax "#e-.0" 0 "0")
 | 
				
			||||||
| 
						 | 
					@ -2200,21 +2200,21 @@
 | 
				
			||||||
;; (test-numeric-syntax "1l2" 100.0 "100.0" "100.")
 | 
					;; (test-numeric-syntax "1l2" 100.0 "100.0" "100.")
 | 
				
			||||||
;; (test-numeric-syntax "1L2" 100.0 "100.0" "100.")
 | 
					;; (test-numeric-syntax "1L2" 100.0 "100.0" "100.")
 | 
				
			||||||
;; ;; NaN, Inf
 | 
					;; ;; NaN, Inf
 | 
				
			||||||
;; (test-numeric-syntax "+nan.0" +nan.0 "+nan.0" "+NaN.0")
 | 
					(test-numeric-syntax "+nan.0" +nan.0 "+nan.0" "+NaN.0")
 | 
				
			||||||
;; (test-numeric-syntax "+NAN.0" +nan.0 "+nan.0" "+NaN.0")
 | 
					(test-numeric-syntax "+NAN.0" +nan.0 "+nan.0" "+NaN.0")
 | 
				
			||||||
;; (test-numeric-syntax "+inf.0" +inf.0 "+inf.0" "+Inf.0")
 | 
					(test-numeric-syntax "+inf.0" +inf.0 "+inf.0" "+Inf.0")
 | 
				
			||||||
;; (test-numeric-syntax "+InF.0" +inf.0 "+inf.0" "+Inf.0")
 | 
					(test-numeric-syntax "+InF.0" +inf.0 "+inf.0" "+Inf.0")
 | 
				
			||||||
;; (test-numeric-syntax "-inf.0" -inf.0 "-inf.0" "-Inf.0")
 | 
					(test-numeric-syntax "-inf.0" -inf.0 "-inf.0" "-Inf.0")
 | 
				
			||||||
;; (test-numeric-syntax "-iNF.0" -inf.0 "-inf.0" "-Inf.0")
 | 
					(test-numeric-syntax "-iNF.0" -inf.0 "-inf.0" "-Inf.0")
 | 
				
			||||||
;; (test-numeric-syntax "#i+nan.0" +nan.0 "+nan.0" "+NaN.0")
 | 
					;; (test-numeric-syntax "#i+nan.0" +nan.0 "+nan.0" "+NaN.0")
 | 
				
			||||||
;; (test-numeric-syntax "#i+inf.0" +inf.0 "+inf.0" "+Inf.0")
 | 
					;; (test-numeric-syntax "#i+inf.0" +inf.0 "+inf.0" "+Inf.0")
 | 
				
			||||||
;; (test-numeric-syntax "#i-inf.0" -inf.0 "-inf.0" "-Inf.0")
 | 
					;; (test-numeric-syntax "#i-inf.0" -inf.0 "-inf.0" "-Inf.0")
 | 
				
			||||||
;; ;; Exact ratios
 | 
					;; ;; Exact ratios
 | 
				
			||||||
;; (test-numeric-syntax "1/2" (/ 1 2))
 | 
					(test-numeric-syntax "1/2" (/ 1 2))
 | 
				
			||||||
;; (test-numeric-syntax "#e1/2" (/ 1 2) "1/2")
 | 
					;; (test-numeric-syntax "#e1/2" (/ 1 2) "1/2")
 | 
				
			||||||
;; (test-numeric-syntax "10/2" 5 "5")
 | 
					(test-numeric-syntax "10/2" 5 "5")
 | 
				
			||||||
;; (test-numeric-syntax "-1/2" (- (/ 1 2)))
 | 
					(test-numeric-syntax "-1/2" (- (/ 1 2)))
 | 
				
			||||||
;; (test-numeric-syntax "0/10" 0 "0")
 | 
					(test-numeric-syntax "0/10" 0 "0")
 | 
				
			||||||
;; (test-numeric-syntax "#e0/10" 0 "0")
 | 
					;; (test-numeric-syntax "#e0/10" 0 "0")
 | 
				
			||||||
;; (test-numeric-syntax "#i3/2" (/ 3.0 2.0) "1.5")
 | 
					;; (test-numeric-syntax "#i3/2" (/ 3.0 2.0) "1.5")
 | 
				
			||||||
;; ;; Exact complex
 | 
					;; ;; Exact complex
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue