From 83f8cfd69b39af34510c20f0697c23da4a52e1f4 Mon Sep 17 00:00:00 2001 From: Alex Shinn Date: Tue, 9 Apr 2013 21:46:29 +0900 Subject: [PATCH] Adding note about the derived syntax definition of quote. It makes compilation slightly but noticeably slower and is inconvenient, so leaving as a core form for now. --- eval.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/eval.c b/eval.c index 188df9a5..8973d5cd 100644 --- a/eval.c +++ b/eval.c @@ -1811,6 +1811,14 @@ sexp sexp_define_foreign_param (sexp ctx, sexp env, const char *name, /*********************** standard environment *************************/ +/* The 10 core forms. Note quote can be defined as derived syntax: */ + +/* (define-syntax quote */ +/* (lambda (expr use-env mac-env) */ +/* (list */ +/* (make-syntactic-closure mac-env (list) (syntax-quote syntax-quote)) */ +/* (strip-syntactic-closures (car (cdr expr)))))) */ + static struct sexp_core_form_struct core_forms[] = { {SEXP_CORE_DEFINE, (sexp)"define"}, {SEXP_CORE_SET, (sexp)"set!"},