<br><br><div class="gmail_quote">On Fri, Dec 2, 2011 at 2:19 AM, Russel Winder <span dir="ltr"><<a href="mailto:russel@russel.org.uk" target="_blank">russel@russel.org.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Java is the main language of development just now. D is a tiny little<br>
backwater in the nether regions of obscurity. If any language is a joke<br>
here, it is D since it is currently unable to claim any serious market<br>
share in the world of development. The sooner you accept this, the<br>
sooner you can discuss the shortcomings of a language you have no<br>
experience of, by your own admission.<br>
<br>
Your point about how languages become popular has some merit, albeit<br>
stated in an overly bigoted fashion.<br></blockquote><div><br>That's like saying people should take Coke and Pepsi more seriously because they have bigger market shares when in reality all you need is water. Money isn't real, you know?<br>
<br>D is already a success, a BIG success. Walter and Andrei (and the
amazing community, of course) have created a programming language that
is light years ahead of C++, Java and Go.<br><br>I don't think you know this, but every high school student who takes a computer science course is required to learn Java. It doesn't stop there: in college and university it's all Java, too, and this has been going on for almost two decades. And before Java it was mostly C++, but it was phased out. Unless the course specifically requires a different programming language (which is rare), you have to beg to use a different programming language (which I did). Sometimes professors do allow other programming languages, but they mostly limit it to C/C++. In most cases students either have to accept it and do what they are told to do, or fail the course. If that's not indoctrination, I don't know what is. Also, the reason they restrict education to things like Java and C++ has very little to do with the fact that those languages have claimed big market share; rather, it's because corporations have had a vested interest in universities in the first place and they receive what they order. Just look at what Microsoft has been doing in universities: everything from "free" gifts such as free copies of Windows OS and Visual Studio Ultimate that cost thousands of dollars to sponsoring various kinds of events. The students who are influenced by such tactics, to whom do you think they are going to be loyal to?<br>
<br>The _main point_ here is that if students had been give the choice to learn a programming language of their choosing, many of the so called "successful" programming languages would not have been so "successful" today. So next time you decide to lecture someone on how popular or "successful" Java is, just remember how it got to be so "successful".<br>
<br><br></div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Your point about exploitation should be aimed at the entirety of the<br>
economic systems of the world. The systems in the USA, India and China<br>
(the three main economies of the world) rest completely and solely on<br>
exploitation. It's called capitalism.<br></blockquote><div>
<br>I do see the entirety of the economic system of the world, and, no, it's NOT called capitalism. It's called the Monetary System. Capitalism, Socialism, Communism, etc,... they are all inherently the same because they are all based on the Monetary System. Money is created out of debt, and money is inherently scarce. Differential advantage and exploitation is name of the game, regardless of the form of government you have. And as far as I know, India isn't even in the top five; USA, China, and Japan are in the top three.<br>
</div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
[...]<br>
<div><br>
> So far I have competed in the ACM ICPC regional programming contests<br>
> twice. I've met many students there and I've had many teammates, most if<br>
> not all of them Java programmers. Besides me (I've never actually done any<br>
> Java), I don't know any other C++ programmer in there. I have seen<br>
> countless problems solved in Java and C++, with Java always being 10-20<br>
> times slower: same problem, same algorithms and/or data structures.<br>
> Whenever I find an article that talks about Java being faster than C++, I<br>
> know it's BS. You can find fair comparisons at <a href="http://www.spoj.pl/" target="_blank">http://www.spoj.pl/</a><br>
<br>
</div>If you have never used Java or never actually investigated the issues as<br>
to when Java is significantly slower than C++ and when it is as fast as<br>
C++ then clearly you have no grounds on which to express any opinion<br>
based on facts, it is just prejudice and bigotry. Such comments have no<br>
place in any discussion.<br></blockquote><div><br>I choose to ignore Java for technical and non-technical reasons. Unlike you, I don't need to spend years of my life doing Java programming to realize what a joke it is, and I have never seen a case where Java was just as fas as C++. This is one of those myths, or corporate propaganda, that's been propagated by educated idiots. I and the teams I've been a member of have solved countless CS problems that have required every kind of data structure and algorithm, and not once have I seen Java come close to C/C++. On average, Java has been about 20 times slower than C++ and requiring on average 50 times more memory when it came to solving those problems. If you honestly believe that Java can be just as fast as C++, then go to <a href="http://www.spoj.pl/">http://www.spoj.pl/</a> and pick a problem and submit a solution in Java that's no more than 3 times slower than C/C++ and requires no more than 10 times more memory.<br>
</div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div><br>
> Java is also very sluggish. I don't exactly know why, but I'm sure it has<br>
> something to do with JVM and/or GC. Just look at Android and compare it to<br>
> iPhone to see what I mean. Apps running on the PC written in Java are also<br>
> sluggish: Things like Eclipse and Open Office come to mind.<br>
<br>
</div>If you don't know why, how can you make claims that you cannot<br>
substantiate in any way shape or form.<br>
<br>
You qualitative assessment of applications such as Eclipse and<br>
OpenOffice relates to the codebase and not the language.<br>
<div><br>
> Java is a joke. It's a faith-based ideology. Get over it.<br>
</div>[...]<br>
<br>
Clearly you are having a crisis of faith, and so are having to lash out<br>
to protect your ideology. I am entirely comfortable with my perceptions<br>
of languages, so have no need for such behaviours. I analyse languages,<br>
consider use in context, and use the most appropriate language for the<br>
job at hand, be it Fortran, C++, C, Ada, Haskell, OCaml, Java, Groovy,<br>
Python, Ruby, Clojure, Lisp, Go. Perhaps even D.<br>
<div><div><br></div></div></blockquote><br>I'm not easily offended, and I've learned to let go. I love to be proven wrong because that's when I learn something new. I think you are having a harder time with this than you realize, and it's easy to understand why: you have spent years of your life with pointless creations such as Java, and they are now part of your identity. Of course you are going to get upset when someone labels Java as something of a joke because you take that statement personally and see it as an attack on who you are. It's okay. Just learn to let go. You still have time.<br>
</div>