[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On 2003.06.17 19:07 Michael Vanier wrote:
> I think syntax is important, but not in the way most people think.  I like
> s-expression syntax not because it's the prettiest (it isn't), or because
> it's the most readable (it isn't), but because it's the most scalable.  You
> can, in effect, beat the living crap out of it (e.g. with macros) and it
> still looks the same.

You are certainly right in placing a high value on the resiliency of the
underlying paradigm, but prettiness and readability do count for a lot
too.  "Prettiness", to me, is just another name for a closely related set
of qualities -- symmetry, rhythm, expressive economy, visual balance --
which greatly influence both the efficiency and gratification of
programming in that language.  Readability is the key to comprehensibility,
which is the antecedent to maintainability, extensibility and reusability.

I can't help but conclude that any language which can maintain an active
following among programmers over the course of decades while spawning
multiple generations of viable offspring must be doing something right.
There are two such languages that I know of, Lisp and C (you can argue
if you want that C is a derivative of earlier languages, but no one I know
of is programming in any of those languages).

Lisp and C have something else in common in my opinion: they are both well
equipped to produce really bad programs as well as really good programs.
You can think of successors to these languages -- Scheme, C++, Java -- as
elaborations which use carrots (syntactic sugar for powerful semantic
constructs) and sticks (lexical scoping, class/module/package protections,
sandboxed VMs etc.) to make it easier to do good things and harder to do
bad things.


Michael St. Hippolyte