Skip to main content
12 events
when toggle format what by license comment
Dec 22, 2016 at 5:18 comment added Justin Time - Reinstate Monica @Giorgio I believe we can expect modules... sometime this century, at the rate the proposal is advancing. It's been a work in progress for a while, but they keep postponing it yet because it's not ready.
May 14, 2013 at 22:16 history edited gnat CC BY-SA 3.0
quote from the referenced link
Nov 8, 2011 at 19:53 comment added Giorgio @Jeremy: Well, for example, Modula2 appeared in 1978 and, still, C++ does not have a decent module concept: I cannot say "import ClassA from ModuleB;" and have the compiler search for the appropriate module / class definition. ;-)
Nov 8, 2011 at 18:24 comment added Jeremy @Giorgio Sure, there have been innovations since the development of C++ that account for many of the features you find lacking there. Are any of those features that they should have found looking at languages established before the development of C++? That's the kind of homework we are talking about with Java - there is no reason for them not to consider every C++ feature in the develpoment of Java. Some like multiple inheritance they intentionally left out - others like RAII they seem to have overlooked.
Nov 7, 2011 at 21:22 comment added Giorgio @Gnawme: "Java seems to have missed the boat on a number of issues, some of which relate directly to RAII": can you mention these issues? The article you posted does not mention RAII.
Nov 7, 2011 at 21:04 comment added Giorgio Typo, I meant: "I did not say that Java designers did their homework."
Nov 7, 2011 at 20:58 comment added Giorgio I did not say that Java designers did not do their homework. I said that C++ designers did not do it either. C++ has RAII and I miss it when using Java. Java is simpler and cleaner and I miss it when using C++.
Nov 7, 2011 at 20:53 comment added JoelFan @Gnawme, but C# didn't learn RAII :)
Nov 7, 2011 at 20:33 comment added Jeremy @Giorgio Studying existing languages in a particular paradigm and language family is indeed a part of the homework required for new language development. This is one example where they simply whiffed it with Java. They had C++ and Smalltalk to look at. C++ didn't have Java to look at when it was developed.
Nov 7, 2011 at 20:29 comment added Gnawme @Giorgio: The point of the article is, Java seems to have missed the boat on a number of issues, some of which relate directly to RAII. Regarding C++ and its impact on Java, Eckels notes: "You must keep in mind the primary design decision upon which everything in C++ hung: compatibility with C. This was a huge constraint, and has always been C++'s greatest strength... and its bane. It also fooled the Java designers who didn't understand C++ well enough." The design of C++ influenced Java directly, while C# had the opportunity to learn from both. (Whether it did so is another question.)
Nov 7, 2011 at 20:15 comment added Giorgio This sounds like a Java versus C++ answer, rather than focusing on RAII. I think C++ and Java are different languages, each with its strengths and weaknesses. Also the C++ designers didn't do their homework in many areas (KISS principle not applied, simple import mechanism for classes missing, etc). But the focus of the question was RAII: this is missing in Java and you have to program it manually.
Nov 7, 2011 at 19:00 history answered Gnawme CC BY-SA 3.0