[racket] Reading Graph Structure: read: #..= expressions not allowed in read-syntax mode (??)

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Mon Jun 6 09:30:58 EDT 2011

At Mon, 6 Jun 2011 06:49:33 -0600, Jay McCarthy wrote:
> Graph syntax is not allowed, but you be able to put it in a quote

It doesn't work under quote, either. Graph syntax works only as input
to `read' --- as opposed to `read-syntax' for code.

Quoted cyclic syntax used to work, but cyclic constants were almost
never used, and the machinery to deal with cycles during expansion was
fragile (i.e., tracking lexical context long enough to determine that
`quote' is the usual quote).

> On 2011/06/06, at 6:48, Marijn <hkBst at gentoo.org> wrote:
> 
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> > 
> > Hi,
> > 
> > why does the following code
> > 
> > 
> > #lang racket
> > 
> > (struct _dl (left val right))
> > 
> > (define (dlist a b c)
> >  #1=(_dl #f a #2=(_dl #1# b (_dl #2# c #f))) )
> > 
> > 
> > produce the error:
> > 
> > Module Language: invalid module text
> > . read: #..= expressions not allowed in read-syntax mode
> > 
> > Marijn
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v2.0.17 (GNU/Linux)
> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> > 
> > iEYEARECAAYFAk3szKQACgkQp/VmCx0OL2wDcACfZj/BiBK4hqpD0I3ynS8MrJ00
> > xzQAmwRNm20xUQMq2NMORUMzzWTYB6ni
> > =lEnu
> > -----END PGP SIGNATURE-----
> > _________________________________________________
> >  For list-related administrative tasks:
> >  http://lists.racket-lang.org/listinfo/users
> _________________________________________________
>   For list-related administrative tasks:
>   http://lists.racket-lang.org/listinfo/users


Posted on the users mailing list.