<p>An important thing about homiconicity: In homoiconic languages, you can build code in an in-memory structure, and there&#39;s some way to execute that structure, but that *doesn&#39;t mean the interpreter is literally executing the structure you built*. LISP has &quot;defun&quot;, TCL has &quot;proc&quot;. In each of these cases, you pass in a code structure (formally, at runtime) and get back an executable object. You execute these &quot;compiled&quot; executable objects, not the original data. This is a fiddly distinction, but…</p>
Reply