[racket-dev] 5.2.0.1: displayln appears to write to console from where drracket was launched
On Oct 19, 2011, at 5:30 PM, Robby Findler wrote:
> That sounds cool to me. Now that I think about it, I think we used to
> have something like this (it was a mixin tied to a specific language,
> not something that worked for all #lang languages) but it was back
> before we had the macro system to support it, I think.
>
> I imagine it would work as by having an alternative to "run" that
> would just put you somehow into level 1.
That's precisely what I imagine.
Better still. It would be hidden all the time unless explicitly opened.
You could then use it to perhaps inspect what live CS really 'thinks.'
> Probably if it is possible, it is easy. :)
Possibly worth a small paper somewhere. And I am sure Ryan would/should help.
>
> Robby
>
> On Wed, Oct 19, 2011 at 4:17 PM, Matthias Felleisen
> <matthias at ccs.neu.edu> wrote:
>>
>> The first step would be a compile-time IO console.
>>
>> The second step would be a compile-time interaction mode.
>> This would fit right in with Ryan's past work. It would mean
>> compile the Def Window (as in CS) and make for-syntax values
>> available at the repl for experimentation. Then again, I might
>> have had too much coffee :-)
>>
>>
>>
>>
>> On Oct 19, 2011, at 5:13 PM, Robby Findler wrote:
>>
>>> With a REPL? That's a lot more than I had been thinking about. I'm not
>>> sure how to do it, either.
>>>
>>> Robby
>>>
>>> On Wed, Oct 19, 2011 at 4:12 PM, Matthias Felleisen
>>> <matthias at ccs.neu.edu> wrote:
>>>>
>>>> May I propose a compile-time interaction window in drracket? -- Matthias
>>>>
>>>>
>>>>
>>>> On Oct 19, 2011, at 5:08 PM, Robby Findler wrote:
>>>>
>>>>> Well, when you do IO at compile time there isn't really a good place
>>>>> to put it (at least not at the moment) so instead of making a good
>>>>> place to put it, I just let it go to drracket's stdout. Probably
>>>>> reasonable to consider this a bug.
>>>>>
>>>>> Robby
>>>>>
>>>>> On Wed, Oct 19, 2011 at 4:06 PM, Matthias Felleisen
>>>>> <matthias at ccs.neu.edu> wrote:
>>>>>>
>>>>>> Yeap, I have live CS running all the time. Interesting effect.
>>>>>>
>>>>>>
>>>>>> On Oct 19, 2011, at 5:02 PM, Robby Findler wrote:
>>>>>>
>>>>>>> Probably when you were running check syntax? (Or maybe when it was
>>>>>>> being run for you?)
>>>>>>>
>>>>>>> Robby
>>>>>>>
>>>>>>> On Wed, Oct 19, 2011 at 4:01 PM, Matthias Felleisen
>>>>>>> <matthias at ccs.neu.edu> wrote:
>>>>>>>>
>>>>>>>> I am running the silly program below (no meaning), and on occasion I see the output of the *** line in the console from where I launched drracket. 5.2.0.1 from 10/16
>>>>>>>>
>>>>>>>>
>>>>>>>> #lang racket
>>>>>>>>
>>>>>>>> (require (for-syntax syntax/parse))
>>>>>>>>
>>>>>>>> (define-for-syntax (postfix stx word stem)
>>>>>>>> (datum->syntax stx (string->symbol (string-append word "-" (symbol->string stem)))))
>>>>>>>>
>>>>>>>> (define-syntax (define-un-serialize stx)
>>>>>>>> (syntax-parse stx
>>>>>>>> [(_ name:id (argument:id ...) unparser:expr parser:expr)
>>>>>>>> (define serialize (postfix stx "serialize" (syntax-e #'name)))
>>>>>>>> (define deserialize (postfix stx "deserialize" (syntax-e #'name)))
>>>>>>>> (displayln `(,serialize ,deserialize)) ;; ****
>>>>>>>> #`(define-values (#,serialize #,deserialize)
>>>>>>>> (values (lambda (argument ...) unparser)
>>>>>>>> (lambda (msg) parser)))]))
>>>>>>>>
>>>>>>>> (define-un-serialize f (x y) values values)
>>>>>>>> _________________________________________________
>>>>>>>> For list-related administrative tasks:
>>>>>>>> http://lists.racket-lang.org/listinfo/dev
>>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>
>>