|
From: | Panicz Maciej Godek |
Subject: | Re: Making apostrophe, backtick, etc. hygienic? |
Date: | Sun, 30 Aug 2015 14:48:40 +0200 |
This is a bit of a crank idea, but here goes.
Today I wasted some time trying to find the bug in the following piece
of code:
(define (syntax-car syntax)
(syntax-case syntax () ((car . cdr) #'car)))
Better error reporting in macro-expansion errors might have made it less
painful, but maybe we can solve the problem itself.
How about making 'foo turn into something like (__quote__ foo), and
similar for `foo, #'foo, etc.? Where __quote__ is just a synonym to
quote, and the original works too. Ideal would be a symbol that's not
as noisy (in debug output) but still highly improbable to appear in user
code and be accidentally shadowed.
Maybe it would not be standards-compliant in the strict sense, but I
believe it would be an improvement.
Am I missing any obvious downsides? Or any subtle ones?
[Prev in Thread] | Current Thread | [Next in Thread] |