Announcement

Collapse
No announcement yet.

Java JDK 9 Firmed Up For A Late July Release

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Duh. Java 9 is a smelling trash fire.

    They went in and did something useful - refactored the JDK into a set of independent modules (so that servers or IoT thingies won't need to have Swing libraries anymore).

    But being completely clueless they couldn't stop at that and went into complete "Architecture Astronauts" mode and designed a completely useless new "module system" that changes the basic structures of the language. Nobody, literally nobody wants it. And since it's not customer-driven its development has bogged down in tons of yak-shaving issues. It's STILL not finished.

    I really hope they just drop it entirely.

    Comment


    • #12
      No Unicode 9.0 support in Java 9?

      I would hope it has a nice getter/setter syntax or something. C# feels much more modern.

      I hope Google will be quick to pickup these changes from Java 9 into Android.

      Comment


      • #13
        Originally posted by uid313 View Post
        ...

        I would hope it has a nice getter/setter syntax or something. C# feels much more modern.

        ...
        There's Scala.

        class Point(var x: Int, var y: Int)

        Comment


        • #14
          Originally posted by uid313 View Post
          No Unicode 9.0 support in Java 9?

          I would hope it has a nice getter/setter syntax or something. C# feels much more modern.
          C# is more modern.

          Java is Enterprise. That means; very long support cycles, nothing should break when upgrading Java. The largest Enterprise business servers are written in C++ or Java. For instance, the world's fastest stock exchange, NASDAQ's "INET" on Wall Street is written in Java with sub 100 microseconds latency and extreme throughput. These large Enterprise servers can not ever go down, they are very very very very conservative with introducting new functionality. One lost business day might mean millions in lost revenue or more than that. For instance, London Stock Exchange "TradeLect" running on Windows and C#(?) had stability and latency problems so lot of banks went to other stock exchanges instead - they lost customers. Finally, LSE bought MillieniumIT who has a stock exchange running on Linux + Solaris and now everything is fine and the customers went back to LSE.

          The point is, in these Enterprise companies, they value stability before new hot cool buzz words. Java is Enterprise and therefore evolves very slowly, Java dont introduce new tech unless absolutely needed. OTOH, the outspoken policy from Sun Microsystems was that Java should evolve very slowly and carefully. But the Java libraries should evolve fast.

          C# is not Enterprise. It is not targeted to very large extreme servers. No instead C# targets desktop software. Not Enterprise servers. And in that case it doesnt matter if C# introduces every new cool feature and become large and bloated. Microsoft have no tradition of targeting large Enterprise servers, when they try, it backfires (London Stock Exchange migrated away from Windows because of stability issues). Sun and Oracle have a Enterprise tradition, and they are different. So Java has a different philosophy than C# - which is good.

          Java for large Enterprise servers with LTS long support cycles. C# for desktop software accessing the large Enterprise servers. For instance, lot of trading software is written in C# which accesses the large Enterprise stock exchange servers written in Java or C++.

          Comment


          • #15
            Originally posted by bug77 View Post

            Yeah, because things written in C/C++ tend to be so bug-free.

            On another note, I use Java every day and I still can't follow its development since Oracle took over. According to this http://openjdk.java.net/projects/jdk9/ Java 9 is feature complete since May. And now they figure Jigsaw needs 3 months additional time? What kind of crappy code get checked in over there? Fwiw, they did this immediately after taking over from Sun, too. Java 7 was supposedly feature complete (with Jigsaw included), but Oracle announced a delay because the code was "not up to standards" and after delaying it a couple of time, they decided Java 7 will proceed without Project Jigsaw which will come with Java 8. Obviously that didn't pan out either.
            A quick looked there revealed that they'll probably still considering including an AOT framework (only for 64b linux for now). Maybe the modular Jigsaw framework also introduced lots of bugs.

            I'm really looking forward to this. All improvements in startup speed might help projects like Scala compile faster. There are some IoT frameworks like the one OpenHAB uses. They're all slow and bloated. I once tried to run it on ARM. Not fun.

            Comment


            • #16
              Originally posted by caligula View Post

              A quick looked there revealed that they'll probably still considering including an AOT framework (only for 64b linux for now). Maybe the modular Jigsaw framework also introduced lots of bugs.

              I'm really looking forward to this. All improvements in startup speed might help projects like Scala compile faster. There are some IoT frameworks like the one OpenHAB uses. They're all slow and bloated. I once tried to run it on ARM. Not fun.
              Why would you expect vastly improved startup performance because of Jigsaw? The JVM already loads classes on demand, making the JRE modular won't change that. Scala compiles faster because the compiler is more complex and has to do a lot more work than javac. You want fast compile time, you use gradle and its daemon mode (which is enabled by default now). Or JRebel.

              Comment


              • #17
                Originally posted by bug77 View Post

                Why would you expect vastly improved startup performance because of Jigsaw? The JVM already loads classes on demand, making the JRE modular won't change that. Scala compiles faster because the compiler is more complex and has to do a lot more work than javac. You want fast compile time, you use gradle and its daemon mode (which is enabled by default now). Or JRebel.
                I got the impression that the standard jars in openjdk can be split now. So there's definitely less to load from disk. It would also make a single application environments like OpenHAB servers more lightweight. Currently you still have the swing classes etc. in the jar, even if they're not loaded. It will slow down class loading a little bit. Also it seems the class hiearchy is a directed, non-cyclic graph now, which might speed up the class loading, maybe not.

                Comment


                • #18
                  Originally posted by caligula View Post

                  I got the impression that the standard jars in openjdk can be split now. So there's definitely less to load from disk. It would also make a single application environments like OpenHAB servers more lightweight. Currently you still have the swing classes etc. in the jar, even if they're not loaded. It will slow down class loading a little bit. Also it seems the class hiearchy is a directed, non-cyclic graph now, which might speed up the class loading, maybe not.
                  I don't think classes are loaded by the jar (java.lang.ClassLoader defines methods for loading classes by name). And there's already Java for embedded that doesn't have swing at all iirc.
                  If anything, having to open more jars will be slower by itself (not to mention will consume more file handlers).

                  Anyway, I got nothing against Jigsaw (except that it's holding back releases), I just don't understand the big enthusiasm and why emblemparade thinks it's crucial.

                  Comment


                  • #19
                    Originally posted by bug77 View Post
                    Nobody needs that level of application modularity (otherwise OSGI would have taken off) and in the JDK/JRE I still don't know what it will improve.
                    Um, OSGi *has* taken off. It is huge in the enterprise world. Jigsaw is precisely a response to that popularity.

                    Comment

                    Working...
                    X