So why wouldnt using a mutable struct work? > (struct kons (first rest) #:transparent #:mutable) > (shared ([a (kons 1 a)]) a) #0=(kons 1 #0#)
On Tue, Feb 1, 2011 at 10:33 AM, Matthew Flatt <[email protected]> wrote: > At Tue, 01 Feb 2011 10:14:57 -0500, David Van Horn wrote: >> > (shared ([a (cons 1 a)]) >> a) >> #0='(1 . #0#) >> >> > (struct kons (first rest) #:transparent) >> > (shared ([a (kons 1 a)]) >> a) >> (kons 1 #<undefined>) >> >> Is there a way to get the kons structure to behave like cons? > > No. The `shared' form can only create cycles with mutable structures. > > _________________________________________________ > For list-related administrative tasks: > http://lists.racket-lang.org/listinfo/users > _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users

