4 ms·
The problems will come when it is claimed that some other thing is really just an API, and also subject to this ruling. Is public inheritance and interface imp
by mmusson 8y ago
The problems will come when it is claimed that some other thing is really just an API, and also subject to this ruling.
Is public inheritance and interface implementation no longer allowed in Java? I can think of several ways to duplicate parts of the Java API. I don’t see how courts will draw a legal distinction.
- pron 8y agoIANAL, but there are several things going on: > The problems will come when it is claimed that some other thing is really just an API, and also subject to this ruling. This is not so simple. The court ruled only about a particular case that concerns an API under the "traditional" definition (the only thing we used to call API until not long ago) -- an API that is actual code -- and not other things that some are calling APIs, such as protocols (so-called REST "APIs"). One cannot simply claim that the ruling applies to other kinds of things, like protocols, regardless of whether programmers think they are similar or even "essentially the same." For example, in the US programs are protected by copyright but not patents while algorithms are protected by patents but not copyright. I imagine that at least part of the reason for this distinction can be found here: https://www.law.cornell.edu/uscode/text/17/102 https://www.law.cornell.edu/uscode/text/17/102 (a) Copyright protection subsists... in original works of authorship fixed in any tangible medium of expression... (b) In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work. A program (and an API) are some text "fixed in a tangible medium of expression" while an algorithm (and a protocol) are an idea described in some text (although the description text itself may be copyrighted; an algorithm book, including the pseudocode of the algorithms, is copyrighted, but the algorithms themselves are not). Ideas can be covered by patents, not copyright. > Is public inheritance and interface implementation no longer allowed in Java? Leaving aside the fact that Java is 100% open source and the license explicitly allows this kind of use (and in a non-viral way thanks to "the classpath exception")[1], your question is similar to, if a recording is copyrighted, is listening to it no longer allowed? One can make fair use of copyrighted works. This would not only apply to subtyping or calling APIs, which, like listening to music, is obviously their intended use but even -- and this is implied in the discussed ruling -- copying them and implementing them in order to enable third-party interoperability (the court ruled that in this particular case Google did not make fair use of the APIs[2]) [1]: http://openjdk.java.net/legal/gplv2+ce.html http://openjdk.java.net/legal/gplv2+ce.html [2]: https://en.wikipedia.org/wiki/Oracle_America,_Inc._v._Google,_Inc.#Appeals_Court_and_finding_of_non-fair-use https://en.wikipedia.org/wiki/Oracle_America,_Inc._v._Google...
- pulse7 8y ago> This is not so simple. The court ruled only about a particular case... But this case would be a very significant precedent...
- mercer 8y ago...
- rbanffy 8y agoThis seems dangerous to anyone reverse engineering an API to, say, port it to another language or runtime. Is the Win32 API copyrighted? If so, is the ReactOS project in danger? Is Haiku?
- pron 8y agoFirst, porting to another platform may well fall under fair use: https://en.wikipedia.org/wiki/Oracle_America,_Inc._v._Google,_Inc.#Appeals_Court_and_finding_of_non-fair-use https://en.wikipedia.org/wiki/Oracle_America,_Inc._v._Google... Second, companies don't sue you just to make a point or to show they're right; success is never guaranteed, and corporate lawsuits are expensive -- not only in direct monetary cost but in PR costs as well. Companies use lawsuits when there's actual serious damage done to them which they want to recuperate, or to prevent such imminent danger of serious damage. If you cause serious damage you should expect to be sued regardless of whether you did something wrong or not, and even if you do something wrong but don't cause serious damage, chances of a lawsuit are low[1]. So while certain things may certainly increase your exposure, what puts you in danger is the harm you do more than the rules you break. Projects that mimic or port the Windows API would be in danger -- whether now or before the lawsuit under discussion -- when they can cause serious damage to MS. [1]: This may be different for trademark violations; I think trademarks require vigilant defense or they could be lost.