[fpc-devel] regarding RTTI unit mail

Hans-Peter Diettrich DrDiettrich1 at aol.com
Sun Aug 29 03:53:47 CEST 2010


Daniƫl Mantione schrieb:

> The EU software directive says a few words about this matter:
> 
> "Protection in accordance with this Directive shall apply to the 
> expression in any form of a computer program. Ideas and principles which 
> underlie any element of a computer program, including those which 
> underlie its interfaces, are not protected by copyright under this 
> Directive."
> 
> In other words: It is okay to copy the interface, but not its expression.
> 
> 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).

An interface is a contract, and as such every translation *must* follow 
the original closely.

> Generally safe is the clean room approach: Someone who doesn't know the 
> Delphi source code implements it from documentation. This is 
> internationally considered best practise and can avoid discussions 
> wether it is a violation or not. If you happen to know the Delphi 
> sources, you have to be carefull what you write.

Documentation is known to not reflect the implementation properly, in 
all aspects. So another cleanroom were required, that documents the 
given *implementation*, in a way that allows to implement it in a 
different way or language.

> The EU software directive allows us to develop FPC in a reasonably safe 
> way, but the borders between independent implementation and copyright 
> violation unfortunately is not black and white.

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.

DoDi




More information about the fpc-devel mailing list