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?
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.
ReplyDelete