[plt-dev] Hunting down an elusive certification bug

From: Dimitris Vyzovitis (vyzo at media.mit.edu)
Date: Sat Feb 28 15:45:11 EST 2009

On Sat, 28 Feb 2009, Matthew Flatt wrote:

> Are you using 'local-expand' and pulling apart the result somewhere? Or is 
> that what splice-expand means?

By splice expand I mean that there is a match front end that can handle
patterns of this form:

(match ...
  ,@(foo))

Where foo is syntax-local-value looked up as a macro, and then called
on the syntax (directly, as a function without local expand).
The result is deconstructed as #'(pat ...)
and spliced into the expansion for the normal (scheme/match) match.

So there is no local expand, but the type like expansions are contained
in such a foo, which came from a macro which itself introduced a rename.
[yikes, I know]

-- vyzo


Posted on the dev mailing list.