To view parent comment, click here.
To read all comments associated with this story, please click here.
Wow, ndrw really unleashed quite the debate here, it turns out I was right this would turn into quite the drama. Unfortunately I think the court left us with more questions than answers. Much of the problem is that the structures and function prototypes present in header files represent the idea of the API and are an expression of the API at the same time. There isn't really any difference between the idea of a function prototype in our minds, and on screen. So which interpretation would the court have us use? That would have been helpful.
Assuming for a moment that structures & function prototypes are not copyrightable (because they're directly representative of the ideas of them), then we might consider them to be a type of "copyright barrier", where two different programs/DLLs can explicitly use the same structures & function prototypes without being legal derivatives. I think this would have huge implications for both proprietary and OSS licenses.
But the court was just too unclear, I think the issue needs to be kicked back in until they take a more assertive stance.
I don't think the court knew what the hell it was doing. There's a whole can of worms opened up, for no good purpose.
For example, take "template libraries", where the "library" isn't a staic or dynamic library file, but rather consists of a bunch of header files specifying (at times, very complex) templates. In such a case, the template library API is the same thing as the template library implementation. If one can't copyright APIs, then one can't copyright template library implementations. So, in effect, all template libraries (that are released to the public for developers to use) are now pulic domain, period. If one creates and releases a template library, the developer cannot specify any terms of use (GPL, LGPL, or otherwise) and must release it as public domain. Which makes no sense and serves no purpose.
Now, the only template libraries that I've ever used are the Microsoft ones (like ATL), which while having Microsoft copyright boilerplate statments, Microsoft likely wouldn't care if they were public domain. But I can't imagine that RMS or FSF would be pleased to see that it's now impossible to write a GPL template library and that all existing GPL template libraries are now public domain by court order.
And template libraries is just one example. I can think of other examples where "You can't copyright API" makes no sense and serves no purpose.




Member since:
2009-07-18
What the FSF says is not really relevant. What matters is what the law says. As far as I can tell, this ruling points out that API's (i.e. things like names and signatures) are not copyrightable, only the actual implementation of that API is. Therefore it would be odd that you can end up with a derived work if you only use the API and do not include an actual implementation of that API (which is what dynamic linking does).
So from an engineering point of view, it would seem that when linking dynamically, you would be creating a derived work from something that is not copyrightable. I'm not a lawyer, but my guess is that this no longer makes it a derived work, in which case GPL would be equal to LGPL for dynamic linking (and interpreted languages), at least in the EU. It remains to be seen if that is the case in the USA as well.