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 racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/20200607160227.bmwnuh5cg4kvkren%40topoi.pooq.com.