Defining Language Aesthetic
I saw a presentation recently that showcased several 'scripting' languages such as Python, Ruby, JavaFX, Perl, etc.
Someone raised the point about how to evaluate a given language. That is: is it possible to state one's criteria for an 'appealing' or 'successful' language? Certainly such a statement would be subjective and true hair-splitting: many languages are subtle shades of the same colour on the language spectrum.
Still, it's an interesting question.... One person suggested that their criteria might be stated as: can a developer read a demo program in the given language and have a reasonable chance of understanding what it does? That's a fair question, IMO.
To paraphrase Guido Van Rossum (of Python fame), another aesthetic might be stated like so: what would it be like to maintain someone else's code in this language? I won't name any, but many languages fail this test for me. I'm talking here of the "average case" -- not bad, obfuscated code by a poor programmer.
I think the latter gets close to my sense of aesthetic. But also, more vaguely, a sense for "does the language help me do what I want to do, transparently, and then stay out of my way?". That's tough to quantify.
It's an interesting thing to consider... your thoughts?
1 comment:
Instead of the average case, I'd suggest you aim higher than that, and employ better-than-average programmers. The average programmer isn't a good one.
Post a Comment