News for hackers. Stuff that matters.
Re:Oracle wins appeal re Java API copyrightability [pdf] by dragonwriter on Friday May 09, 2014 @02:04PM (#7722353)
Depending on the languages involved in both the original declaration and the implementation, its quite possible for an API reimplementation to include a derived work rather than a verbatim copy of the original API declaration (and obviously, it wouldn't be a reimplementation if it was just a verbatim copy of the original API implementation.)

Though both making verbatim copies and making derived works are exclusive rights of copyright owners so that doesn't really reduce the impact of API copyrightability on API reimplementations,

Re:Oracle wins appeal re Java API copyrightability [pdf] by Oletros on Friday May 09, 2014 @02:43PM (#7722597)
When I say API reimplementation is including the underlying functional code, not just the API headers.

And what is copied verbatim are just the headers

Re:Oracle wins appeal re Java API copyrightability [pdf] by dragonwriter on Friday May 09, 2014 @02:49PM (#7722617)
> And what is copied verbatim are just the headers

If you are using different languages that compile to a compatible target, or if you are using the same language that admits different literal declarations expressions that produce the same interface, it is possible to have an API reimplementation -- for the same target platform even -- that does not involve verbatim copying of even the headers/declarations.

Re:Oracle wins appeal re Java API copyrightability [pdf] by DannyBee on Friday May 09, 2014 @02:59PM (#7722691)
It's possible in some languages, but it often involves serious messing around.

For example, in C, this would involve function name aliasing which is usually a compiler specific extension. This might give you name compatibility, but to get struct-level compatibility, you'd have to copy the exact layouts due to padding issues.

In C++ it's even harder, due to when vtables are emitted, etc.

My java knowledge is old (java 5), so i don't know if they made it possible.

Objective-C, I believe it would only be possible if you used the runtime reflection methods directly. I don't think you can easily do it with just headers (corrections welcome!) etc

Re:Oracle wins appeal re Java API copyrightability [pdf] by Nullabillity on Saturday May 10, 2014 @07:01AM (#7725050)
I believe Java will look up methods etc by name (and signature) at runtime, so anything missing will just produce an exception when you try to use it.