On Sun, Jun 07, 2020 at 08:09:40PM +0800, Siyuan Chen wrote: ... ... > > There is an alternative of Lisp macros called FEXPRs, see > https://en.wikipedia.org/wiki/Macro_(computer_science)#Early_Lisp_macros > > > Early Lisp macros > > Before Lisp had macros, it had so-called FEXPRs, function-like operators > whose inputs were not the values computed by the arguments but rather the > syntactic forms of the arguments, and whose output were values to be used > in the computation. In other words, FEXPRs were implemented at the same > level as EVAL, and provided a window into the meta-evaluation layer. This > was generally found to be a difficult model to reason about effectively.
This wasn't just a feature for the expert user; it was the way basic primitives like 'quote', 'cond', and 'let' were implemented in the lisp 1.5 interpreter; the actual interpreting code being written in assembler (or Lisp, if it wasn't an utterly necessary primitive). -- hendrik > > More information, see https://en.wikipedia.org/wiki/Fexpr ... ... -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/20200607160227.bmwnuh5cg4kvkren%40topoi.pooq.com.

