[racket-dev] syntax/syntax proposal

From: Vincent St-Amour (stamourv at ccs.neu.edu)
Date: Fri Jun 15 17:25:39 EDT 2012

At Fri, 15 Jun 2012 15:09:15 -0600,
Ryan Culpepper wrote:
> The 'stx-*' functions work on values that aren't syntax objects, so 
> renaming them to 'syntax-*' would be misleading.

Given the name, I would have thought they only worked on syntax
objects.

> Roughly,
> 
>    stx = syntax | null | (cons syntax stx)

I had no idea that was the case. The name certainly does not suggest
that. The fact that the metavariable for syntax objects is `stx' also
does not help.

In which cases would I use an `stx' as opposed to a syntax object?

> I sometimes wonder if we should make a racket/pre-contracts 
> subcollection and just stuff all of racket/contract/base's dependencies 
> in there, then say everything else is allowed (maybe even expected) to 
> use contracts.

+1

Vincent

Posted on the dev mailing list.