Email list hosting service & mailing list manager

w,dF under Guile and Gauche Stephen Lewis (22 Jun 2005 19:32 UTC)
Re: w,dF under Guile and Gauche Ken Dickey (27 Jun 2005 15:47 UTC)

Re: w,dF under Guile and Gauche Ken Dickey 27 Jun 2005 03:06 UTC
Stephen,

Thanks much for the feedback.  I did post a new web page for SRFI-48 with the
attached code which should work as expected.  [Sorry for the delay.  I have
been hiking in the wilds and away from computers].

The srfi editors are a bit slow to post things.  I'll ping 'em again.

Sorry for the delay.

Cheers,
-KenD
===================================================
On Wednesday 22 June 2005 12:32, Stephen Lewis wrote:
> 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