« First Look: Windows 7
Code Snippet of the Day: Recursive File Finder »


In retrospect, maybe we were wrong

In a formal paper from Sun, oh so many years ago:

The newest version of the Microsoft Visual J++ development environment supports a language construct called delegates or bound method references. This construct, and the new keywords delegate and multicast introduced to support it, are not a part of the JavaTM programming language, which is specified by the Java Language Specification and amended by the Inner Classes Specification included in the documentation for the JDKTM 1.1 software.

It is unlikely that the Java programming language will ever include this construct. ... We believe bound method references are unnecessary because another design alternative, inner classes, provides equal or superior functionality


Fast forward a decade, and Java is still in the stone-ages, meanwhile Microsoft gave up on J++/JVM due to Suns refusal to innovate and gave us a language with not only "Bound Method References", but anonymous closures and lambda expressions.

Looking back, I wonder where Java would be now if their pissing match with MS didn't exist, and they had actually adopted delegates.

Hindsight is 20/20.

Posted by Jonathan Holland on 5/8/2009.

Tags: .NET   Java   Delegates   Fail

Comments:

I saw James Gosling talk at the U of Calgary in 2003 (or so). He mentioned he had ideas from Simula67 he wanted to put into Java but he felt he had to make the language look like C or else people would be afraid to use it. I can't help but think that made the language frustrating for a number of people.

Gravatar Posted by chad on 5/20/2009.

Comments are closed on this post.