This seems to be an issue involving how 'object->string' works:

--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> (object->string '1-foo)
$1 = "#{1-foo}#"
scheme@(guile-user)> (object->string '-foo)
$2 = "-foo"
scheme@(guile-user)> (object->string 'foo-1-bar)
$3 = "foo-1-bar"
scheme@(guile-user)> (object->string 'foo-1)
$4 = "foo-1"
scheme@(guile-user)>
--8<---------------cut here---------------end--------------->8---


Grepping guile source, we see that 'format' also uses 'object->string' for the 
~a format, which prints:

--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> (format #t "Expected: ~a, ~a; Unexpected: ~a;~%" 'foo 
'-foo '1-foo)
Expected: foo, -foo; Unexpected: #{1-foo}#;
$5 = #t
scheme@(guile-user)>
--8<---------------cut here---------------end--------------->8---



Reply via email to