In reply to Samuel "Otto" Wood.

I an not a lawyer (although I like to think I understand some aspects more then other people ;) ) and I know the copyright law is not easy to understand as is evident by the fact that the lower court decision was overturned.

I agree with Chip's understanding, the Max function by itself is not copyrightable but the Math library might be. It is deciding when does an API stops being a trivial that will be the hard part here. From the way I understand it there was no ruling that the JAVA API is copyrightable, just that it might be and it is the job of the lower court to decide whether the API is not trivial collection of trivial facts and therefor deserve the protection. For Example I would agree that the Math library by itself should not be copyrightable as it is a trivial collection of trivial description of functions.

"But if I create some code and then somebody else creates another piece of code designed to *look* like my piece of code and work with other code that was originally designed to be working with my code instead, should I be able to prevent them from doing it?"

Well wordpress.org position (or was it matt's personal one?) is that you can actually prevent others from replicating the wordpress API. In the big "plugins and themes *have to be* GPL compatible" debate the base assumption is that the only place you can use wordpress API is with the wordpress core library and there might not be any other libraries under other licenses that implement the same API under different license.

Now, should you be actually able to prevent people from replicating your API? I am not sure what is my position, but in a way it is much easier to assume that every API is copyrightable and let the copyright holders decide how permissive they want to be with it, exactly like it is done with code.

And even under copyright law there is fair use, Is WINE fair use? I think not as it is usually not that hard to buy a license for windows, but SAMBA might be as you might have devices which talk only SAMBA while the majority of your network is not windows based.

"You don’t usually get to choose what APIs you use to communicate."

I mostly agree when you talk about network protocols (or intercommunication protocols in general) but that is not what the this specific case is about.

We are creating things in software which it was not possible to do before and this is why the courts have to answer questions that simply were not asked before, and the courts have to interpret old laws in a new settings. It might be that the laws need to be changed to better reflect what people think that is "right" but till then there is no much point in saying that the court was wrong. Best lawyers aided by the best software engineers money can buy were arguing there. The court decision might still be wrong but it was a very informed one, just no point in saying "the court didn't understand"..