On Fri, 2014-12-05 at 22:28 +0000, Freddy via Digitalmars-d wrote: > […] > My problems with java: > no unsigned ints
Indeed, right pain in the @@@@. > primitive are passed by value; arrays and user defined types are > passed by reference only (killing memory usage) Primitive types are scheduled for removal, leaving only reference types. > no operator overloading(looks at java.util.ArrayList) Biggest mistake The Green Team made. Fixed by Groovy. Oh and Scala, Ceylon, Kotlin. > > no templates Why would you want them for a JVM-based machine, there is no possibility of reification of type parameters, type erasure and all that mess. Scala, Kotlin, etc. have to create a vast infrastructure to deal with this. > no property syntax(getters and setters are used instead even if > you know the field is never going to be dynamic) Setters, getters and mutable properties are, or should be, anathema. They turn an object oriented programming language into an imperative procedural one without encapsulation. > only and exactly one class per file(ALL THE IMPORTS) You can have as many classes as you want per file, but only one of them can be public. > every thing must be inside a class(globals and free functions > are static fields in a class) In Java. And Scala. Groovy, Kotlin, and Ceylon do things differently, the programmer can treat the JVM as having top-level functions. > […] -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:[email protected] 41 Buckmaster Road m: +44 7770 465 077 xmpp: [email protected] London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
