
mflatt
2018-10-30 11:47:35
Yes, that’s right. And just to be clear: > (for/list ([s (in-list (instance-variable-names l))])
(define str (symbol->string s))
(if (symbol-unreadable? s)
(eq? s (string->unreadable-symbol str))
(eq? s (string->symbol str))))
'(#t #t #t)

mflatt
2018-10-30 11:49:20
Well, there can also be unreadable symbols due to macro expansion. But there shouldn’t be anything but interned and unreadable symbols as long as a macro doesn’t use gensym
.

samth
2018-10-30 12:48:25
@mflatt Are all unreadable symbols “interned” in that sense, or only some of them? And if only some, is there a predicate to tell?

mflatt
2018-10-30 13:59:27
All of them.

samth
2018-10-30 14:37:02
@cadr I think this suggests that our problem is just serialization of unreadable symbols (which we are currently write
ing like regular symbols)