w,dF under Guile and Gauche
Stephen Lewis 22 Jun 2005 19:32 UTC
Hi,
I am trying to use SRFI-48 under Guile and Gauche for formatting fixed
point output. Thanks for creating the SRFI - here is some feedback,
I have tested SRFI-48 using the code posted here on Jun 5th (there is no
version in source code) using both Guile and Gauche Scheme interpreters
and I find the following apparent formatting errors:
=======================================================================
**FAIL: expected: " 1.026"
got: " 1.260"
from: (format "~10,3F" 1.0256)
**FAIL: expected: " 1.002"
got: " 1.200"
from: (format "~10,3F" 1.0025)
**FAIL: expected: " 1.003"
got: " 1.300"
from: (format "~10,3F" 1.00256)
**FAIL: expected: "1.000012"
got: "1.120000"
from: (format "~8,6F" 1.00001234)
=======================================================================
Here are the tests that were run:
=======================================================================
;;;
;;; test cases for srfi-48a.scm
;;; 22-Jun-2005 Stephen Lewis <xxxxxx@napanet.net>
;;;
;;; run under Guile version 1.6.4 'guile -s test2-48.scm'
;;; and under Gauche version 0.8.4 'gosh test2-48.scm'
;;;
(load "./srfi-48a.scm")
;;;
;;; Guile and Gauche 'eval' takes 2 args
;;;
(define-macro (expect expected form . compare)
(let* ( (same? (if (null? compare) equal? (eval (car `,compare) (current-module) )))
(wanted (eval `,expected (current-module) ))
(actual (eval `,form (current-module) ))
)
(if (same? wanted actual)
(format #t "PASSED: ~s~%" form)
(format #t
"~%**FAIL: expected: ~s~% got: ~s~% from: ~s~%"
wanted
actual
form))
) )
;;;===================================================
(expect " 1.026" (format "~10,3F" 1.0256))
(expect " 1.002" (format "~10,3F" 1.0025))
(expect " 1.003" (format "~10,3F" 1.00256))
(expect "1.000012" (format "~8,6F" 1.00001234))
=======================================================================
Stephen Lewis