[racket] print-graph, DrRacket, and command-line REPL
In the "use language declared in the source" language if I click the
show sharing checkbox in the details section of the language dialog
and run this program:
#lang racket
(define x (list 1))
(list x x)
Then I see this output:
'(#0=(1) #0#)
Were you doing something else?
(also I think that probably drracket should repect the print-graph
parameter is print mode, but I'm not sure)
Robby
On Wednesday, October 13, 2010, Neil Van Dyke <neil at neilvandyke.org> wrote:
> In 5.0.1, how do I make REPL printing in both DrRacket Interactions and the command-line REPL use the shared structure format?
>
> In DrRacket, I cannot seem to do this regardless of whether the "Show sharing in values" is true, and whether "Output Style" is "write" or "print".
>
>> (print-graph #t) ; just to show that this does not seem to affect the REPL
>> (define x (let ((tail '(tail))) `((a , at tail) (b , at tail))))
>> x
> ((a tail) (b tail))
>> (parameterize ((print-graph #t)) (format "~S" x))
> "((a . #0=(tail)) (b . #0#))"
>>
>
> I want to see the shared structure format, since I have some library code that uses shared list tails heavily to save space and to shortcut some searches.
>
> I believe that PLT 3xx, at least, used shared structure format by default.
>
> --
> http://www.neilvandyke.org/
> _________________________________________________
> For list-related administrative tasks:
> http://lists.racket-lang.org/listinfo/users
>