2 Replies Latest reply: Sep 22, 2003 11:23 AM by 843853 RSS

    Java 3 API

      I wrote a little doc about what I think should happen in Java 3.

      Pete's Top 20 Ideas for the next Java

      The first ten or so are based on Eliotte's article, "10 Reasons We
      Need Java 3.0," and the comments to it.

      1. Delete all deprecated stuff
      2. Fix incorrect naming, including get/set in java.nio
      3. Make primitives classes
      4. Create one native class that can be extended to allow operator
           overloading, this is so the primitives can use operators.
      5. Add enums
      6. Make chars 4 bytes
      7. Kill thread groups, stop, suspend, destroy
      8. All file formats should be java.util.Properties, or if they
           require a binary file format, they should be serialized
           Objects, using java.io.ObjectOutputStream
      9. Ditch AWT/Swing for SWT
      10. Make the Collections more standardized
      11. Make File more flexible, kill PrintStream, make PrintWriter
           throw exceptions, rename write/readUTF write/readString
      12. Make java.io talk to java.nio better.
      13. Add write/readString to java.nio.ByteBuffer.
      14. Add unsigned and generic types
      15. Make arrays implement List
      16. Open-source the base Java platform, but keep the standard open
           for commercialization
      17. Make ONE JVM/classfile specification, and stick to it! We could
           probably live with the JRE 1.1 VM, if we didn't change the
           class file format.
      18. Cut out tons of junk from the core library. For example,
           completely remove Applet. No one uses them anymore. We need
           to make java.sql, java.util.regex, java.nio,
           java.util.logging, java.util.prefs, java.beans, java.rmi,
           javax.accessibility, javax.crypto, javax.imageio,
           javax.naming, javax.print, javax.sound, entire org package.
           These classes should all be in javax and be downloaded only
           if a certain application requires them. We'll know if
           they are required by a Dependencies entry in the manifest,
           specifying package name and build number.
      19. Add build numbers on JARs and/or classes. This will make
           versioning way easier.
      20. Replace RMI with TRMI (trmi.sourceforge.net)
        • 1. Re: Java 3 API
          1. in method calls, make returned arguments symmetric to passed arguments (method signature is different if number or types of returned arguments differ). but keep current code working.

          2. explicitly exclude support for windows "24bit" (16/32, win95,98,me,...) since sun will never fix System.currentTimeMillis()' 50/60ms accuracy problem on those, and also a host of other bugs.
          • 2. Re: Java 3 API
            Guys, you're crazy.
            I hope Sun will not take your postulates seriously.

            I don't understand some St0rm's points, some I am afraid of.

            6. Why do you need 4 bytes char? Unicode doesn't work for you well?
            8. All files in java.util.Properties? How do you imagine loading legacy systems' binary data from files???
            9. Gooooosh! What SWT??? I am developing serious application in Swing and the GUI is very good. I checked out SWT and I would feel horrible if I am forced to use it. Please tell me how to highlight table rows on different colors in SWT. Please tell me how can I develop custom UI JavaBeans in SWT. The library seems not to be mature yet. Take hands off from Swing! Let Sun develop it...
            18. Many use Applet. Calm down.

            Only a few of your proposals are resonable.