What do you wish language designers paid attention to?
- by Berin Loritsch
The purpose of this question is not to assemble a laundry list of programming language features that you can't live without, or wish was in your main language of choice. The purpose of this question is to bring to light corners of languge design most language designers might not think about. So, instead of thinking about language feature X, think a little more philisophically.
One of my biases, and perhaps it might be controversial, is that the softer side of engineering--the whys and what fors--are many times more important than the more concrete side. For example, Ruby was designed with a stated goal of improving developer happiness. While your opinions may be mixed on whether it delivered or not, the fact that was a goal means that some of the choices in language design were influenced by that philosophy.
Please do not post:
Syntax flame wars (I could care less whether you use whitespace [Python], keywords [Ruby], or curly braces [Java, C/C++, et. al.] to denote program blocks). That's just an implementation detail.
"Any language that doesn't have feature X doesn't deserve to exist" type comments. There is at least one reason for all programming languages to exist--good or bad.
Please do post:
Philisophical ideas that language designers seem to miss.
Technical concepts that seem to be poorly implemented more often than not. Please do provide an example of the pain it causes and if you have any ideas of how you would prefer it to function.
Things you wish were in the platform's common library but seldom are. One the same token, things that usually are in a common library that you wish were not.
Conceptual features such as built in test/assertion/contract/error handling support that you wish all programming languages would implement properly--and define properly.
My hope is that this will be a fun and stimulating topic.