Re: Updated: SRFI-110 specification and reference implementation
David A. Wheeler 18 Apr 2013 03:31 UTC
John Cowan:
> Note that Chibi doesn't actually conform to R7RS-small here, which requires
> that `write` print labels only for circularity, not for shared structure.
Are you sure Chibi doesn't conform? I think that's changed. I used Chibi Scheme 0.6.1, and it
*does* have a parameter to print only for circularity. In fact, that's one reason I used
Chibi's implementation instead of the one in SRFI-38; the Chibi one is more efficient
and supports circularity detection (via an optional extra undocumented parameter).
Given:
(define demo3 '(dosomething (a1 a2) (b1 b2) (c1 c2)))
(set-car! (cdr demo3) (cadddr demo3))
neoteric-write-shared produces:
dosomething(#0=c1(c2) b1(b2) #0#)
neoteric-write (aka neoteric-write-cyclic) produces:
dosomething(c1(c2) b1(b2) c1(c2))
Am I missing something?
--- David A. Wheeler