6 ms·
Reimplementation does not necessarily violate copyright. Copying does violate copyright (absent fair use). Like verbatim copying. Example, Google didn't have
by hcknwscommenter 9y ago
Reimplementation does not necessarily violate copyright. Copying does violate copyright (absent fair use). Like verbatim copying. Example, Google didn't have to use the “java.lang.Math.max(a,b)” header, but they did. They did copy because they wanted to leverage the existing Java developer base who would easily be able to develop for Android, without having to do the hard work of building their own ecosystem. Overall, Google copied the header structure for more than six-thousand methods.
- tankenmate 9y agoCopyright exists to protect artistic expression, not functionality. Functionality is protected by patents.
- hcknwscommenter 9y agoExactly. I don't see what you are disagreeing with. The point is that in order to leverage Java's developer base as quickly as possible they made it possible for Java developers to essentially develop for Android without needing to learn a new syntax for all the APIs they already knew. That is why they copied.
- gefh 9y agoHow many ways are there to define max? Surely AT&T should turn around and sue Oracle for lifting max(a, b) from stdlib. Or maybe SCO will rise from the grave and try it again.
- hcknwscommenter 9y agoAn infinite number of ways. Call it max(b,a) [i.e., reverse the order of b and a inputs]. But Google didn't do any of that. They copied.
- tankenmate 9y agoThe previous remark's point was that Java copied many C functions, inventions largely of AT&T and BSD.
- hcknwscommenter 9y agoI see the point, but that's "whataboutism." I also have no idea who owns the copyright (if anyone does) to stdlib APIs, and whether Oracle obtained license. Do you?
- wtallis 9y ago> (if anyone does) There's no doubt that if it is established that APIs are subject to copyright, then someone owns copyright to the C standard library APIs. It's not old enough for copyright to have expired, and nobody has ever released the APIs to the public domain (because nobody ever seriously thought that such a thing would be necessary). Establishing API copyright as a real thing without broad fair use rights would throw into doubt the copyright ownership of a large portion of all software ever written.
- FeepingCreature 9y agoYou could call it max(b,a) but that would be fucking stupid. People shouldn't have to write shit code cause judges are tech illiterate.
- hcknwscommenter 9y agoAnd just how is max(a,b) good code and max(b,a) bad code?
- chii 9y agoCode written for one will fail for the other, and negates the whole point of interoperability. Therefore the method signature should not be copyrightable
- sjwright 9y agoBeware interpreting copyright law with the assumption that interoperability is relevant. The law doesn't care.
- chii 9y agocopyright has a fair use clause, which states that one can decompile software to produce a derivative for the purposes of interoperability. This then must assume that any apis being implemented has to both fall under copyright (otherwise, this law does not apply to api), but also means that the law allows for the use of the api for the purposes of interoperability (and therefore, you cannot claim to have the sole rights to an api).
- sjwright 9y agoBeware interpreting interoperability as a form of fair use. I wish we could make that assumption, but I don't think it's warranted.
- FeepingCreature 9y ago
- pavon 9y agoThat is exactly what reimplementation means in this context, creating a new implementation of an existing interface. And that is exactly what GNU Linux did. They copied a large number of system header files and created new libraries that implemented them. The copied a large number of command-line interfaces, and created executables that implement them. They extended them in the process, but the goal was to mostly preserve API compatibility.