[racket] Again on bindings visibility in eval
10 minutes ago, Markku Rontu wrote:
> On Thu, Jul 14, 2011 at 6:23 PM, Eli Barzilay <eli at barzilay.org> wrote:
> > No, it's broken in pretty much all cases. Give me a single
> > symbolic macro and I'll show you how it's broken. (And point out
> > how CL bypasses the problem...)
> >
> I think it's a bit disingenuous to say they are broken. People made
> successful systems using their simple but broken tools, yes? People
> are making successful systems in crippled languages such as Java and
> CL. And some people even like it :-) Sure they can only build a
> limited thing with the broken tool, but if you stay within its
> limits it doesn't matter, does it? Nobody is trying to implement
> Typed Clojure on top of the macro system, I hope :-)
Sure, if you take the TM-equivalent path then nothing is broken, of
course... (That path tends to melt away all of PL into a weak *puff*
of irrelevance...)
> But as syntactic sugar for a DSL, where's the big problem that makes
> it entirely broken?
Actually, unhygienic macros break even more glaringly for many DSLs.
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!