I just happened across an essay by Tim Bray (http://www.tbray.org/ongoing/misc/Tim) that he wrote back in 2006 about XML Language Design (I guess he means schema design though).
Now why should D people care about this guy's rant about (XML) Language Design? As I read the essay, the insight that I took away was that you can take out all references to XML and replace them with PL (as in programming language) without loss of generality and most of what he says, imho, is applicable to, and there are lessons to be learned (or should have been learned in 20/20 hindsight) for the development of D (and for any aspiring PL for that matter). Up front he strikes a chord that will be familiar to D people quoting another author: There are only two hard things in Computer Science: cache invalidation and naming things And this snippet is a goodie too: "Each and every language-design effort has the potential to blow through its deadlines and trail along forever, and offers many chances to fall into the bikeshed trap." The main headings in his essay are: Expect Semantic Gaps Manage the Process The Syntax-vs-Model Wars Minimalism vs. Completeness Evolution vs. Stability Extensibility If you have the time, this essay by Tim Bray is well-worth a read. Here's the link: http://www.tbray.org/ongoing/When/200x/2006/01/09/On-XML-Language-Design Enjoy, Justin Johansson