Content deleted Content added
m →Common Lisp: Subst: {{unsigned}} (& regularise templates) |
|||
Line 4:
== Common Lisp ==
The article lists Common Lisp as a strict programming language. I am under the impression that Common Lisp functions are strict, but Common Lisp macros are not. Do I understand correctly?
: As far as I can tell, macros are not directly related to strictness. Strictness relates to evaluation strategy, but macros are without evaluation strategy, as they are meta-evaluated. In effect, a macro can be used to change the evaluation strategy, so you can achieve macros that behave non-strictly.
:: I feel that this is worth a mention in the article. For example, ''Structure and Interpretation of Computer Programs'' in section 3.5 uses delayed evaluation via two macros (delay and force) in Scheme to implement data structures such as infinite lists (streams). Since this is actually practical and used in the Lisp family, this matter should be clarified in the article. [[Special:Contributions/132.236.75.84|132.236.75.84]] ([[User talk:132.236.75.84|talk]]) 15:28, 30 November 2009 (UTC)
|