Language designer's notebook, First, do no harm
Sometimes, the bad code enabled by a new language feature outweighs the good
From the developerWorks archives
Date archived: December 19, 2016 | First published: July 19, 2011
While some proposed language features are simply a solution in search of a problem, most have their roots in real-world situations in which the existing features do not enable programmers to express what they want to say as easily, clearly, succinctly, or safely as they'd like. Although having a use case in mind — "this feature enables me to write this code that I want to be able to write" — is good, language designers also need to evaluate language features in light of the bad code they might also enable.
This content is no longer being updated or maintained. The full article is provided "as is" in a PDF file. Given the rapid evolution of technology, some steps and illustrations may have changed.