|
Authored by: Anonymous on Saturday, April 21 2012 @ 11:33 AM EDT |
If any of the 37 depend on any of the classes not
provided by Android in the
same way that java.lang depends
on the 37, then Oracle can use that to say that
if Google
could do without the ones it did not copy, it could do
without the
37 too.
Note that java.lang is not one of the 37. Thus there is a
stratification of the Java stuff, which
seems legally important (if APIs could
be copyrighted):
- The Java language described by the Java Language
Specification (not claimed by Oracle).
- java.lang and its sub-packages
such as java.lang.string
(not claimed by Oracle).
- The 37 APIs designed
by Sun and implemented in Android
(very much in suit).
- Java API's
needed by Suns implementations of java.lang
or the 37 but not included in
Android (Android's
implementation presumably uses something else for those
needs) (This is the category introduced by the judge).
- Java API's not
needed by java.lang nor the 37, and not
implemented by Google (Oracle obviously
cannot object that
Google copied those, but it can object that Google
fragmented Java by not copying them).
[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Saturday, April 21 2012 @ 12:51 PM EDT |
Well, it may not make *sense* to say you have a right to copy X even though
actually copying X requires Y, which you have no right to ... but courts make
irrational and insane rulings like that all the time.
Look at the DMCA on technical protection measures. You may have a right to copy
portions of a DRM protected video, say for criticism, but still not have the
right to extract it from the DRM. It's one of the great things about the DMCA
that companies love ... it allows them to circumvent fair use.
The court's don't care a whit about logic or rationality. They only care about
who bribes them the most.[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Saturday, April 21 2012 @ 12:56 PM EDT |
write a 'null' java program
class nullclass {
public static void main(String[] in) {};
}
This is the minimum program, it will compile, run, do nothing, and exit
This means that a minimum "empty" Java program needs..
java.lang.Object
java.lang.String
java.util.Array
All (user-defined) classes implicitly extend Object
(Specifically, if you do not extend a Class, Java will add 'extends Object', if
you do extend another class, you can work your way up the Class Heirarchy, till
you get to one that does, everything has Object at the root)
[] is implicitly a java.lang.Array
Work out from there, everything they refer to is implicitly Java Language, and
see how far you get crossing off bits of the 37 APIs as you go.
java.lang.Object.getClass() returns an object of the type java.lang.Class, so
java.lang.Class is implicitly required for the Java Language.
java.lang.String.length(), returns an int.
J2SE 5.0 (in contention) autoboxes primitive datatypes
http://docs.oracle.com/javase/1.5.0/docs/guide/language/autoboxing.html
So Integer is required for the lanague
If you don't have .length(), then it is not a java.lang.String, so you must have
it.
java.lang.String throws a NullPointerException, there's another one, also means
you have to have Throwable, there's another one, and so forth......
I don't have the time.
[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Sunday, April 22 2012 @ 01:03 PM EDT |
That's precisely the barrel, Google has Oracle strapped to.
As seen in the Lexmark vs Static Control Components Appeals
Court decision:
https://w2.eff.org/legal/cases/Lexmark_v_Static_Control/2004
1026_Ruling.pdf
Even if Oracle can establish that these API's pass the
lowest threshold of Copyrightability, what you're saying is
that because the of this intertwining, these API's are
essential in a developer's use of the Java Programming
Language to write programs. Therefore in this court case
there were no alternative ways to write these the
Copyrightable program with it's API's to enable them to work
within the Lexmark hardware. Therefore there is no
infringement even of Lexmark's Copyrighted works.
If the Copyrighted program itself is deemed that it's
essential without any alternative ways to write it, then
even the API's with their intertwining aspects should be
deemed non-infringing even if Oracle can somehow establish
these 37 API's are Copyrightable! ....(the linked Decision
PDF on this is well written and explains how this
Intertwining Argument could play out in Judge Alsop's Court! [ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Sunday, April 22 2012 @ 02:02 PM EDT |
"the Court wishes to know whether the implementation of the 37 API packages
inherit, call upon, invoke, or incorporate any method, field, or class outside
the 37."
I can't comment on the limits of "work" or the case cited, but I would
have thought, the question should be more like
given the 12 classes asserted as essential by <Oracles witness> which of
the 37 APIs packages and classes are essential for those 12 classes to be
complete as a result of inheritance, invocation, incorporation etc[ Reply to This | Parent | # ]
|
|
Authored by: BitOBear on Sunday, April 22 2012 @ 07:26 PM EDT |
All classes in java "incorporate" the "Object" class
explicitly or implicitly as required by the Language.
So there is no such thing as an API for Java that doesn't incorporate java.lang
at least implicitly.
Uses of members like clone would make that use and incorporation explicit. So to
would any use of any "serializable" "runable" or
"throwable" classes or any classes derived there-from.
Any member function that throws any exception is dependent on throwable.
Between the *able classes, and Object there is no such thing as an
"independent" class in java or any API thereof.[ Reply to This | Parent | # ]
|
|
|
|
|