19.1 Introduction
Three pillars of tidy evaluation
- Quasiquotation
- Quosures (chapter 20)
- Data masks (Chapter 20)
Quasiquotation = quotation + unquotation:
- Quote. Capture unevaluated expression …(“defuse”)
- Unquote. Except for selected parts which we do want to evaluate! (“inject”)
Functions that use these features are said to use Non-standard evaluation (NSE)
Note: related to Lisp macros, and also exists in other languages with Lisp heritage, e.g. Julia