|
Authored by: darrellb on Saturday, April 21 2012 @ 06:21 AM EDT |
How can the compatibility of the core APIs be essential for calling
something Java while at the same time be extraneous from
Java? Good point. If something is required to exist to pass the
TCK, it is part of Java. Actually, everything that Oracle requires from another
company in order to use the Java name is *part* of Java. [ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Saturday, April 21 2012 @ 07:01 AM EDT |
That the java language and APIs aren't really cross platform compatible -
that's really a bytecode thing, which also in a strict sense isn't really cross
platform compatible: Java bytecode targets one specification of a platform - a
Java VM.
The fact that the VM is effectively (in a general sense rather than a strictly
technically accurate sense - but without getting deeply into VM design) a
sophisticated translator between the generic java bytecode and the native
platform calls and machine code *is* a clever design strategy, but it doesn't
have anything whatsoever to do with the design of the language and APIs.
The APIs and language structure could look vastly different and still work with
this model - as long as they are consistently defined. There is nothing
whatsoever about the "SSO" / *structure* of the language and APIs
which is
related to cross platform compatibility.
Of course the *implementation* of the APIs using bytecode rather than being
native code is helpful for the cross platform aims, as it leads to the VM being
smaller and lighter - as you said.
It's difficult to get the right terminology to explain these issues clearly in a
way that's technically correct, and understandable by a wide audience with
varying backgrounds.
I have a technical background myself - as a developer, but not as a VM
architect. This is my understanding (which is hopefully accurate.) I'm
attempting to get it across in a way that can be understood by non tech
people, and hope I'm not misleading or confusing the issues.
It's no wonder the legal issues are hard to understand when the basics of the
case are confusingly presented. I wonder if more common legal definitions of
terms in the industry would be helpful. Perhaps some group - like the apache
foundation could/should draw up a list of legal definitions and present it to
the government(s) and industry for approval in legal use. Technical definitions
*should* not be this controversial and confusing.
[ Reply to This | Parent | # ]
|
|
|
|
|