The following parameterize behavior seems to be wrong.

CHICKEN
(c)2008-2010 The Chicken Team
(c)2000-2007 Felix L. Winkelmann
Version 4.6.0 
linux-unix-gnu-x86 [ manyargs dload ptables ]
compiled 2010-12-31 on INITERM (Linux)

#;1> 
(define a (make-parameter 1))
(define b (make-parameter 2 number->string))

#;2> #;3> (list (a) (b))
(1 "2")
#;4> (parameterize ((a 10) (b 20)) (list (a) (b)))

Error: (number->string) bad argument type: "2"

        Call history:

        <eval>    [swap2] (g34 g78)
        <eval>    [swap2] (g56)
        <eval>    [swap2] (g56 g910)
        <eval>    (list (a) (b))
        <eval>    (a)
        <eval>    (b)
        <eval>    [swap2] (g34)
        <eval>    [swap2] (g34 g78)
        <eval>    [swap2] (g56)
        <eval>    [swap2] (g56 g910)    <--
#;4> (list (a) (b))
(1 "20")
#;5> 
(define a (make-parameter 1))
(define b (make-parameter 2 number->string))

#;6> #;7> (list (a) (b))
(1 "2")
#;8> (parameterize ((a 10) (a 20)) (list (a) (b)))
(20 "2")
#;9> (list (a) (b))
(10 "2")
#;10> ,q

cf. Gauche-0.9.1 and Ikarus-0.0.3 show the same behavior as Chicken-4.6.0.

-- 
Joo ChurlSoo


_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to