This is a weak argument. Practically all languages
compound symbols made from multiple characters, such as
>=; there is no shortage of symbols. Also, nearly all
programming languages have a function-call notation, but
only Lisp-based languages choose s-expressions to notate
it, so saying “we need function call notation” do not
excuse s-expressions.
I'm ironically going to complain that this is a weak rebuttal.For one thing, I find it hilarious to see how well this predicted the explosion of silly operators in some of the current languages. (Haskel and Scala, I'm looking in your general directions...)
Second, the point is that all function calls now look the same. Both in serialized form and in parsed form. That is, the homoiconic nature is the point, no? To treat that as a somewhat byproduct is somewhat odd.
They then go on to posit the use of meaningful whitespace. Something that is quite disgusting to me. It is dreadfully easy to mistakenly read whitespace. To the point that I do think programs are textual art, and care should be used to structure them in a pleasant and easy to read way. However, I cannot bring myself to like meaningful whitespace. YAML has given me enough headaches in life in a scant year, that I am pretty firmly on the opposite side of that fence now.