Closed GoogleCodeExporter closed 9 years ago
Thank you for your message.
I have updated svn trunk and revision 285 support shared structures. Please try!
Note: You need --compatible option or #!compatible comment to enable shared
structures notation.
$ ypsilon
Ypsilon 0.9.6-trunk/r285 Copyright (c) 2008 Y.Fujita, LittleWing Company
Limited.
> (define lst (cons '#3=(p q r) '(x y . #3#)))
error in read: invalid lexical syntax #3
..."/dev/stdin" line 1
$ ypsilon --compatible
Ypsilon 0.9.6-trunk/r285 Copyright (c) 2008 Y.Fujita, LittleWing Company
Limited.
> (define lst (cons '#3=(p q r) '(x y . #3#)))
> lst
((p q r) x y p q r)
> (car lst)
(p q r)
> (cdddr lst)
(p q r)
> (eq? (car lst) (cdddr lst))
#t
> (cons '#2=#3=(p q r . #2# ) '(x y . #3#))
(#1=(p q r . #1#) x y . #1#)
$ cat proof2.sls
#!compatible
(import (rnrs) (rnrs mutable-pairs (6)))
(define a '#0=((:class . #0#)
(:name . ciao)))
(define b (let ((c '((:class . #f)
(:name . ciao))))
(set-cdr! (car c) c)
c))
(write a)(newline)
(write b)(newline)
(write (equal? a b))
(newline)
$ ypsilon proof2.sls
#1=((:class . #1#) (:name . ciao))
#1=((:class . #1#) (:name . ciao))
#t
Original comment by y.fujita...@gmail.com
on 25 Nov 2008 at 3:19
From what I have tested so far, this workds. Thanks.
Original comment by mrc....@gmail.com
on 1 Dec 2008 at 6:47
Thank you for your reply. I close this issue :)
-- fujita
Original comment by y.fujita...@gmail.com
on 3 Dec 2008 at 4:44
Original issue reported on code.google.com by
mrc....@gmail.com
on 23 Nov 2008 at 9:07