[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Recognizing QUOTE deemed harmful to EVAL's laziness
In Scheme or Lisp, you need a more powerful notion of Normal Form
than in a language without meta-language operations. .....
........ . This avoids the problem of reexamining
expressions and thereby confusing a symbolic value with an expression
in the language.
Of course all this goes out the window if you allow a program to
call the interpreter,... i.e., EVAL.
Precisely. Expressions ARE "symbolic values" (though not all symbolic
values are well-formed expressions). I don't see this as a "confusion".
It is quite legitimate use of a language.
I can't think of any consistent interpretation of "normal form" by
which you can say that (QUOTE FOO) normalizes to FOO. FOO is a
symbolic value, and (QUOTE FOO) is the way you express it in the
language. When Lisp prints answers, it prints the symbolic values
rather than the way they should be expressed in the language. Hence,
the outermost QUOTE gets eaten.