{"id":83,"date":"2010-03-20T13:11:57","date_gmt":"2010-03-20T18:11:57","guid":{"rendered":"http:\/\/tiemensfamily.com\/TimOnCS\/?p=83"},"modified":"2010-03-20T13:11:57","modified_gmt":"2010-03-20T18:11:57","slug":"programming-languages-vary-in-power","status":"publish","type":"post","link":"https:\/\/tiemensfamily.com\/timoncs\/2010\/03\/20\/programming-languages-vary-in-power\/","title":{"rendered":"Programming Languages Vary in Power"},"content":{"rendered":"<p>The title is a &#8220;controversial&#8221; quote from the book <a href=\"http:\/\/www.amazon.com\/Hackers-Painters-Big-Ideas-Computer\/dp\/0596006624\">Hackers and Painters<\/a>.  The book&#8217;s author calls it controversial; I call it blindingly obvious but still not seen by certain people.<\/p>\n<p>That book serves as an example that, even though programming languages differ, not everyone agrees on the &#8220;important&#8221; criteria.  In his world, Lisp is the best language, so his criteria match that (e.g. recursion, dynamic typing, garbage collection).    Lisp&#8217;s ability to write a program that creates a program (see <a href=\"http:\/\/www.apl.jhu.edu\/~hall\/Lisp-Notes\/Macros.html\">&#8220;macros&#8221;<\/a>) gets his highest praise, something much more powerful than c&#8217;s #define macros.  [For my take on the matter, look at my scorn of #defines, below, then imagine making it even more powerful].<\/p>\n<p>Another thing [that I may just be imagining] I noticed was a hint of sour grapes.  Specifically, I&#8217;m guessing when Yahoo bought his company and its Lisp code, Yahoo immediately began re-writing the system in a language that emphasized other criteria over &#8220;power&#8221;, for example, &#8220;maintainability&#8221;, or &#8220;readability&#8221;.<\/p>\n<p>Finally, his catch phrase &#8220;Lisp has no syntax&#8221; is just hilarious.  It serves as the definitive example of why the book is kind of a test: Can you spot the falsehoods?  The book is thought-provoking, sure, but falsehoods abound nonetheless, sometimes in a Jabberwocky &#8220;words mean what I choose them to mean&#8221; way.  My reference on <a href=\"http:\/\/www.apl.jhu.edu\/~hall\/Lisp-Notes\/Macros.html\">macros<\/a>, above, must drive him nuts since the first line is &#8220;Macros in Lisp provide a very powerful and flexible method of extending Lisp syntax&#8221;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The title is a &#8220;controversial&#8221; quote from the book Hackers and Painters. The book&#8217;s author calls it controversial; I call it blindingly obvious but still not seen by certain people. That book serves as an example that, even though programming &hellip; <a href=\"https:\/\/tiemensfamily.com\/timoncs\/2010\/03\/20\/programming-languages-vary-in-power\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/posts\/83"}],"collection":[{"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/comments?post=83"}],"version-history":[{"count":0,"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/posts\/83\/revisions"}],"wp:attachment":[{"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/media?parent=83"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/categories?post=83"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tiemensfamily.com\/timoncs\/wp-json\/wp\/v2\/tags?post=83"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}