Slashdot Mirror


Java Creator James Gosling on C# And More

DreamTheater writes: "Java inventor James Gosling says he isn't losing much sleep over Microsoft these days, despite the software giant's effort to stem Java's popularity with its own Java-like language." Gosling talks about other things in this interview, too, like his current project of developing a good IDE.

5 of 52 comments (clear)

  1. Re:He wrote the original EMACS, huh? Whatta guy! by Linux_ho · · Score: 4, Informative
    --
    include $sig;
    1;
  2. Re:SUN needs to loosen control of Java. Fast. by TurboRoot · · Score: 4, Informative

    This is the common FUD spread by Microsoft regarding the Java standard, but you forgot one important thing... the truth.

    The truth is.. Sun can't protect an open standard. If Java was a totally open standard then Microsoft could "embrace and extend" Java into the ground and destroy it. Sun isn't stupid.

    The truth is, Sun makes every step possible to keep Java as standard as possible and documents it VERY VERY VERY well. Go to http://java.sun.com/docs/books and see for yourself. Scroll down, look at the bottom. THAT is the standard.

    Sun also goes to great pains to receive feedback from the community and industry. In fact a lot of the EJB and J2EE standards were dictated by application server companies.

  3. Re:SUN needs to loosen control of Java. Fast. by MarkMac · · Score: 4, Informative
    Microsoft's not stupid -- they know from history that open, standard systems almost always outcompete even the most entrenched closed systems eventually.

    What a BIZZARE statement regarding Microsoft. Never mind that Visual Basic - the most widely used programming language - is completely proprietary and Microsoft windows specific. Never mind that Microsoft has perverted every "open" standard they use to add their own extensions (often undocumented) effectively turning them into proprietary protocols. The C# language specification may have been passed off to an obscure standards group (that normally doesn't deal with computer languages) but it hardly opens up all of the APIs which really define .NET and the use of C#. "Embrace and extend" is a standard Microsoft policy - has been for a long time and will continue to be. It is not at all clear that CLR and .NET are open standards as it is given the possibility of hidden patents etc.

    Microsoft was caught doing the same thing to Java once they had licensed its use (SUN was pretty naive to have permitted this - maybe they didn't have good enough lawyers ...). As soon as the court found Microsoft guilty, Microsoft announced it would dump Java for their own language which turned out to be C# (that looks and works a lot like Java).

    Unless Sun has a rapid change of heart, .NET, C# and the CLR is going to vapourise Sun's marketshare in server applications and enterprise programming userbase due to sheer openness.

    While SUN has not given up the trademark "Java", this language is hardly as restricted in use as Microsoft would like to imply. Given the incredible number of licensees of various forms of Java would hardly imply that the user base is scared off by SUN's intellectual property. Indeed, Microsoft's past insidious behavior will haunt their promotion of .NET as the new "open" standard. (Who hasn't gotten over the years burned by Microsoft's business practices ...)

  4. C(Hash) Encapsulation mechanism is broken by Martin+S. · · Score: 2, Informative

    It's encapsulation mechanism is broken, all members are essentially public

    That's news to me. Can you provide details?

    Yes, A private member may be accessed directly, just as if it is a public member, this breaks encapsulation, for example:


    localMember = anObject.privateMember ;
    anObject.privateCounter ++;


    http://searchnetworking.techtarget.com/sDefiniti on /0,,sid7_gci212060,00.html

    http://genamics.com/developer/csharp_comparative .h tm#2

  5. Re:Fact based argument. by Shimmer · · Score: 2, Informative

    Care to back that up with a fact based argument rather than a blanket assertion ?

    Sure. I happen to have Visual Studio.NET right here. Let's give it a try, shall we?

    class B
    {
    public B() {}
    private int privateMember;
    }

    class A
    {
    static void Main(string[] args)
    {
    B b = new B();
    b.privateMember = 5;
    }
    }

    When compiled, this program produces the following error on line 12:

    error CS0122: 'B.privateMember' is inaccessible due to its protection level

    Any questions?

    -- Brian

    --
    The most rabid believers in American Exceptionalism are the exact same people whose policies are destroying it.