Op Sun, 29 Aug 2010, schreef Hans-Peter Diettrich:
Copyright is about creative decisions. For example the order in
which procedures, variables are declared are creative decisions
and thus part of the expression of an interface. If you make
the same creative decisions as the original program, you
violate copyright.
I doubt that. It should be possible to compare interfaces easily,
for completeness and version compatibility. In languages like C
and C++ you can get hell when you change the order of elements,
with interleaved #defines and #ifs (what's possible in Pascal as
well).
If the order of elements is enforced, it is not a creative decision, thus
both programmers can make the same decision without violating each others
copyright.
An interface is a contract, and as such every translation *must*
follow the original closely.
Be happy an interface by itself is not copyrightable. If you read about
the history about the software directive there was a big fight about this,
because some companies like IBM wanted copyright to protect them against
clones from the far east, while others actually wanted interoperating
competing products.
But even though they are not copyrightable, you cannot verbatimly copy
interface files. There is copyright on the expression of them.
The above formulation is almost a literal translation of the
German copyright law (UrhG). The UrhG also allows to observe and
even decompile a software, in order to make it interface with
some other software ("interoperability"). The only restriction:
the results may not be disclosed. It would be interesting to get
the full text of the EU directive, in order to find out more.
No surpise here: All copyright laws of member states should be compatible
with the directive, though many have skipped the wording about
interfaces, but that does not matter a lot. You can the directive here:
http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:31991L0250:EN:HTML
Replace the EN in the URL in e.g. DE, NL, ... to read it in another
language.
Daniël
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel