-
Marc Coiffier authored
The old "{@ ... @}" syntax was a bit clunky, so I looked for a way to make it more like the Lisp backquotes. That meant re-using the '}' keyword for closing both quotes, and unquotes. Since that meant introducing additional state into the interpreter, I took it as an opportunity to put that information to good use, and actually start discriminating between "constant" quotes and "exec" quotes. Indeed, the ",{ ... } exec" pattern seemed to be common enough that it deserved its own concept. Enter "${ ... }", and the notion of "exec step". This new distinction will also allow some rudimentary levels of "compilation" to be offered to the users, by means of a function that turns every "verb step" into the "exec step" that corresponds to that verb's value at the time of linking. It's quite simple, but if it could eliminate verb lookups from commonly-used functions, it could be a nice easy performance win.
eac58301