Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

The main problem with Racket

Name: Anonymous 2011-04-21 23:19

The main problem with Racket's macro system (and with other syntax-case systems) is that instead of raw s-expressions you're dealing with syntax objects. This becomes very ugly when identifiers are handled: instead of dealing with plain symbols, you're dealing with these syntax values (called “identifiers” in this case) that are essentially a symbol and some opaque information that represents the lexical scope for its source. In several syntax-case systems this is the only difference from defmacro macros, but in the Racket case this applies to everything — identifiers, numbers, other immediate constants, and even function applications, etc — they are all wrapped with additional information.

Name: Anonymous 2011-04-22 4:50

C macros = text substitution.
CL macros = sexp substitution. (glorified C macros)
Hygienic macros = sexp/syntax substitution, hygiene only on symbols.
Racket macros = sexp/syntax substitution, everything is a syntax object. You can attach properties and information on every piece of syntax. You can write a fucking type system without completely redefine `define', `let', etc.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List