[racket-dev] syntax-property guards? (was: Re: The Stepper strikes again)

From: John Clements (clements at brinckerhoff.org)
Date: Tue Aug 16 17:16:41 EDT 2011

On Aug 16, 2011, at 5:10 PM, Eli Barzilay wrote:

> Three minutes ago, John Clements wrote:
>> 
>> On Aug 16, 2011, at 4:41 PM, Eli Barzilay wrote:
>> 
>>> Earlier today, Stephen Chang wrote:
>>>> 
>>>> It seems like most people agree that it's ok to add stepper syntax
>>>> properties to lazy racket.
>>> 
>>> I agree with that in general while development is ongoing, but
>>> eventually it should be disconnected too.
>> 
>> I don't see how to do this. To make sure we're on the same page, I'm
>> suggesting that it's very difficult to make statements about places
>> in the expanded code without adding annotations to the text of the
>> expansions themselves.
> 
> A possible conclusion would be that it's useful to know these kind of
> things about an expanded piece of syntax, and therefore more macros
> should do that -- but that's unrelated from the stepper, which is
> merely the motivation for requiring such functionality.  Just like
> continuation marks being useful for the stepper, becoming part of the
> core language, and then getting used for much more.

I believe I disagree, but we're still being way too vague.

For instance, consider the "stepper-skipto" annotations, that specify where in an expanded expression the user's original code wound up.  On the one hand, you could argue that "finding the original expression" is a general concept, and could be useful independent of the stepper, but in the absence of other tools that need to know this, the extra work of developing and documenting this general mechanism would seem to constitute a dramatic example of premature abstraction.


John

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4624 bytes
Desc: not available
URL: <http://lists.racket-lang.org/dev/archive/attachments/20110816/d092bad5/attachment.p7s>

Posted on the dev mailing list.