[racket] syntax-case + boxes and hash literals

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Thu Mar 21 09:19:15 EDT 2013

At Wed, 20 Mar 2013 13:27:02 -0600, Matias Eyzaguirre wrote:
> As per the pattern grammer in the reference guide, I can use syntax
> case to match against vectors, lists, and prefab structures [...] But
> I cannot pattern match inside of the box itself.
> [...]
> Why is this? It's my understanding that syntax-case is an older features, and 
> so perhaps it just wasn't updated when newer constructs arrived.

Actually, the box notation predates `syntax-case' (certainly in
Racket/MzScheme, but I think more generally).

> Was this an intentional decision, or did it slip through?

The decision was intentional, but arbitrary.

I don't like the box notation, and I think we probably would have been
better off without it. But since it's there and supported in most
syntax contexts, the `syntax-case' implementation should probably
support it for consistency.

> If it did, could I ask that it be added to the TODO list?

Yes, I'll look into it.

Posted on the users mailing list.