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.
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.