Reinvented Wheels Keep on Turning
My e-mail newsletter ended last year with a look at the progress of Microsoft's C# .Net language.My e-mail newsletter ended last year with a look at the progress of Microsofts C# .Net language. One reader then asked why Microsofts forthcoming enhancements to that language werent part of the first release. He wondered, "Why do we have to keep reinventing these wheels?" Certainly, the family tree of the proposed C# improvements seems to suggest learning opportunities being overlooked during initial language design: generics from C++, iterators from CLU and Icon, and anonymous methods from LISP and Python.
It would be unfair, though, to treat language features as mere checklist items. The proposed generics for C#, for example, will take advantage of the high-level program intelligence thats available in .Nets Intermediate Language and during its run-time compilation.