&gt; Using Lisp syntax, you are wrongly conflating `(+ 2 2)`, which is equal to `4`<p>It is not <i>equal</i> to 4; it <i>computes</i> to 4. Substituting (+ 2 2) for 4 everywhere yields a different computation with a different complexity.<p>&gt; but in a pure language, they will semantically denote the same value.<p>The same <i>value</i> means equal in classical math; not in computation. Otherwise (sort &#x27;(4 2 3 1)) would be the same as &#x27;(1 2 3 4), and if so, what does computation <i>do</i>? We wouldn&#x27;t need a computer if that were so, and we certainly wouldn&#x27;t need to power it with so much energy or need to wait long for it to solve the traveling salesman problem.<p>&gt; For its lack of conceptual clarity. And for its bugs.<p>That&#x27;s a very glass-half-empty view. I for one think that IBM&#x27;s Watson and self-driving cars are quite the achievements. But even beyond algorithmic achievements and looking at systems, software systems that are successfully (and continuously) maintained for at least a decade or two are quite common. I spent about a decade of my career working on defense software, and that just was what we did.