Re: Illustrating JVM bindings
On Thu, 20 Jan 2005 11:53:37 -0500, Raul Miller <email@example.com> wrote:
> I'd say this differently. The program is not a derivative work of
> the library if it was written without any of the relevant copyrighted
> material of that library.
No, it's not a derivative work if it was written without _copying_ any
of the relevant copyrighted material _into_ the program source code.
It's OK to inspect the library source code, comprehend it, experiment
with it, work out what undocumented call sequence actually works
instead of something equally plausible but wrong, and generally to
write a program that wouldn't work without the library and couldn't
have been written without reference to its internals. You just can't
cut-and-paste, or even plagiarize in another language, expressive
content that could equally well have been written differently without
> "A published functional interface" is a easily recongizable and legit
> way for a program to be written so that the program uses the library
> even though the program was written without using the library. Here,
> there's other material under a different copyright (the spec [obviously],
> but also the library headers and a library implementation).
I think you and I are using "published" differently. You're assuming
that it's a standalone specification, probably with multiple
independent implementations, with fairly explicit permission to code
against it. I just mean "published" in a copyright sense, so that one
doesn't have to deal with trade secrets, "fair use" reverse
engineering, and "clean-room" standards. The notion of having to get
the job done without peeking at the internals just doesn't apply to
published source code.
> It's probably worth noting that Borland did this without using any
> lotus library (or headers, and probably without reference to any formal
> specification), and they certainly weren't being sued for using any such
> library inappropriately.
Actually, they were being sued primarily because copying the menu
interface went along with copying the macro language, and both helped
users migrate from 1-2-3 to Quattro Pro. So they were being sued for
reimplementing a functional interface, part of whose function was very
much like a library API.
Interestingly, the Supremes appear at first glance to have biffed on
the certioriari proceeding (appeal from the First Circuit) for Lotus
v. Borland. Justice Stevens was recused or out sick or something, the
remaining justices split 4-4, and the cert. result in its entirety is:
"The judgment of the United States Court of Appeals for the First
Circuit is affirmed by an equally divided Court."
The transcript of oral arguments (
http://www.panix.com/~jesse/lotus_transcript.html ) tells a clearer
story. Judging from the transcript, Borland would have been at more
risk of losing on the menu interface (because its layout was arguably
copyrightable and could be substantially varied without failing to
express the idea) if they hadn't also copied the macro interface. The
social benefit of portability of users' macro files appears to have
weighed heavily with several justices.
Lotus v. Borland hasn't been adopted systematically by other circuits;
Lexmark is the only other case I've run across that cites it. That's
not too surprising given the borderline certioriari. But the trend
towards protecting interoperability seems pretty clear, especially
when one is trying not to supplant an existing product but to
interoperate from the other side of the interface.
> Since the GPL restricts distribution of itself at violation time, this
> idea of "function isn't copyrightable" isn't going to solve all the
> problems faced by someone violating the GPL.
I don't understand this sentence. Perhaps you are trying to say that
for A to study a GPL library to understand how it works, and then
write non-plagiarized, non-GPL code that uses it correctly, causes A's
GPL rights to self-destruct, even if it is not true that under
copyright law the non-GPL code is a derivative work. That's not in
the GPL that I've read, and if it were -- this is freedom?