Talk:Strict programming language: Difference between revisions

Content deleted Content added
SmackBot (talk | contribs)
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? {{<small><span class="autosigned">—Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[User:The Storm Surfer|The Storm Surfer}}]] ([[User talk:The Storm Surfer|talk]] • [[Special:Contributions/The Storm Surfer|contribs]]) </span></small><!-- Template:Unsigned -->
 
: 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. {{<small><span class="autosigned">—Preceding [[Wikipedia:Signatures|unsigned]] comment added by [[User:82.181.66.63|82.181.66.63}}]] ([[User talk:82.181.66.63|talk]] • [[Special:Contributions/82.181.66.63|contribs]]) </span></small><!-- Template:Unsigned -->
 
:: 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)