Java 9 with GPU processing, Java 10 will be all-OOP without primitives
71–80 of 138 posts
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#72Earlier quoted context omitted.
In C# primitives are not objects, but they can be boxed into objects. So if you have a class: public class X { public Int32 i; public Int32 j; public Int32 k; } Then it takes 12 bytes + single object overhead (which in MS .NET I believe is two pointers). But if you assign a primitive (e.g. Int32) to an variable of type 'object' then it will be boxed and then require the object overhead. A neat thing about C#/.NET is…
Well, actually, in C# struct instances ARE objects allocated on the stack, instead of the heap. A parallel can be drawn with C++ in which the user of a class decides on declaration/initialization where to store the object (either on the stack, or on the heap). The difference with C++ is that in C# the author of the class decides where instances of it should be stored, so this decision happens when the class is declar…
You have it backwards, they're not value types because they're allocated on the stack, structs are allocated on the stack because they're value types.
See Eric Lippert's article "The Stack is an Implementation Detail": http://blogs.msdn.com/b/ericlippert/archive/2009/04/27/the-s...
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#73Earlier quoted context omitted.
It pretty much depends on industry. Look at mobile, 2007: J2ME, Symbian, Windows Mobile, BlackBerry -> 2012: iOS, Android, Windows Phone. Now look at the web: it was more of a evolution than revolution. What happened at back-end, like server-side functionality of business apps? They didn't really change and probably won't change for a longer period of time. Even stuff like Hadoop for big data or Groovy for DSLs were…
Even on the "evolutionary" web, I don't think anyone in 2007 would have predicted the rise (and now... fall?) of MVC frameworks or the explosion of jQuery, both of which existed and were relatively popular at the time. Likewise the NoSQL rebellion was a surprise. Five years from now, we'll all be using WebGL-based dyanmic UIs. Or will we? I think the point is more that 5+ year planning in the tech industry is simply…
On the other hand, predicting what changes will occur to a legacy enterprise system tend to be much easier.
In the overall scope of things, Java hasn't really changed that much over the past five years. I think that some long-range planning of the kinds of changes they are thinking about actually makes sense. The need for closures, reified generic types, and an improved type system is unlikely to change in the next 5-10 years.
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#74Wow, how can you seriously plan releases of a programming language out to 2021? That is an eternity in this industry. Even 2015 for JDK 9 seems mighty far off, especially accounting for the usual slippage of release dates with big software projects.
"A plan is useless, but planning is essential" [1]
More true than ever, if you ask me. Sure, you make plans, why wouldn't you? But you also retain the flexibility to adapt the plan as the environment changes. You don't chisel the damn plan into a stack of stone tablets and render it immutable for all time.
I don't see any conflict whatsoever in planning out through 2021. I would say that in doing so, there's an implicit assumption that the plan - especially the farther reaches of it - are subject to change and are based on current best guesses.
[1]: paraphrase of a quote attributed to Dwight Eisenhower, which was probably in turn a paraphrase of another quote. http://en.wikiquote.org/wiki/Dwight_D._Eisenhower
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#75Wow, how can you seriously plan releases of a programming language out to 2021? That is an eternity in this industry. Even 2015 for JDK 9 seems mighty far off, especially accounting for the usual slippage of release dates with big software projects.
(Fuck boxed primitive types. How about generics that weren't designed by drunk retarded monkeys?)
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#76Earlier quoted context omitted.
No, a class's methods are not instances of java.lang.reflect.Method. The latter is simply a 'reflection', per the package name, of first class JVM construct e.g. a reflection on a method.
would you care to explain why this is not enough? You can pass them around, invoke them, get their properties. The interface may be bad but I'm not sure what is missing.
The interface is your basic (irreducible) disconnected/unbound procedure invocation API, with all the positive/warts associated. I agree that in principle, we have enough information in the reflection data structure to allow a (specific) JVM implementation to provide a non-standard 'method object' feature. Consensus, possibly? (Good question, really. C. Nutter is one to hit with that one.)
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#77Earlier quoted context omitted.
I don't think so, Although I agree with you that COBOL is still alive and kicking. That is totally different that being used for awesome projects and by start ups. If Oracle's plan is to keep Java alive as a glue for their DB that strategy would work fine. But it would be a long term disaster in terms of overall innovation, and long term viability for choosing everyday projects.
It's never occurred to me to think of Oracle as being a company concerned with any of those things. It seems totally outside their character, everything they do screams "huge, established customers only".
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#78The presentation declares, "Java is not the new Cobol." It shocks me that a major company like Oracle would be so foolish as to make a statement like this. Stating that something is not is one of the most effective ways to imply that it is and the speaker knows it.
Freud somewhere talks about a primitive tribe where the punishment for saying "The king is not an ass" is the same as for saying "The king is an ass". Edit: I remember reading this years ago and have been unable to track it down. Would love it if somebody did.
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#79Earlier quoted context omitted.
Freud somewhere talks about a primitive tribe where the punishment for saying "The king is not an ass" is the same as for saying "The king is an ass". Edit: I remember reading this years ago and have been unable to track it down. Would love it if somebody did.
I haven't read that before, but I am wondering if that is related to that specific phenomenon, or rather if it's disrespectful to refer to the king, and say "ass" in the same sentence. Do you remember?
Another way to put it is that psychologically, a statement and its negation are not opposites but rather go together. The same idea comes up in hypnosis, where it is said that the unconscious mind drops the "not" and simply receives the images that are given. For the same reason, it's better to say "Remember" than "Don't forget", which is a kind of subliminal invitation to forget. And so on.
Re: Java 9 with GPU processing, Java 10 will be all-OOP without primitives
#80The presentation declares, "Java is not the new Cobol." It shocks me that a major company like Oracle would be so foolish as to make a statement like this. Stating that something is not is one of the most effective ways to imply that it is and the speaker knows it.