help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Octave vs. Matlab legal matters [was: Re: spline with NaNs]


From: Jaroslav Hajek
Subject: Octave vs. Matlab legal matters [was: Re: spline with NaNs]
Date: Tue, 25 May 2010 15:56:31 +0200

On Tue, May 18, 2010 at 6:21 PM, Søren Hauberg <address@hidden> wrote:
> tir, 18 05 2010 kl. 07:54 -0700, skrev mallet:
>> Hum i’m not sure because in spline.m from Matlab there is:
>> «% Check that data are acceptable and, if not, try to adjust them
>> appropriately
>> [x,y,sizey,endslopes] = chckxy(x,y);»
>
> Is this code from Matlab? Please don't ever send Matlab code to this
> list. Octave cannot legally be developed by studying Matlab code, so
> never do that.
>
> Søren
>
>

I decided to invest some time in order to make things finally more
clear in this area.

In Matlab 2007a, clause 13 of EULA says:

13. FOR EUROPEAN UNION LICENSEES ONLY.  Any contractual provisions of
    this Agreement contrary to laws implemented under Article 6 of
    Appendix V of the European Union Software Directive or to the
    exceptions provided for in Article 5(2) and (3) of such Appendix
    shall be null and void solely to the extent decompiling,
    disassembling, or otherwise reverse-engineering of the Programs is
    necessary to enable the Licensee to create an independent program
    that is interoperable with the Programs or any other permitted
    objectives specified by such laws implemented under such directive
    (collectively, the "Permitted Objectives"), provided that any such
    information gained is used solely for such Permitted Objectives.

the referenced EU Software Directive says:

Article 5

Exceptions to the restricted acts

3. The person having a right to use a copy of a computer program shall
be entitled, without the authorisation of the rightholder, to observe,
study or test the functioning of the program in order to determine the
ideas and principles which underlie any element of the program if he
does so while performing any of the acts of loading, displaying,
running, transmitting or storing the program which he is entitled to
do.

Article 6

Decompilation

1. The authorisation of the rightholder shall not be required where
reproduction of the code and translation of its form within the
meaning of points (a) and (b) of Article 4(1) are indispensable to
obtain the information necessary to achieve the interoperability of an
independently created computer program with other programs, provided
that the following conditions are met:

(a) those acts are performed by the licensee or by another person
having a right to use a copy of a program, or on their behalf by a
person authorised to do so;
(b) the information necessary to achieve interoperability has not
previously been readily available to the persons referred to in point
(a); and
(c) those acts are confined to the parts of the original program which
are necessary in order to achieve interoperability.

2. The provisions of paragraph 1 shall not permit the information
obtained through its application:

(a) to be used for goals other than to achieve the interoperability of
the independently created computer program;
(b) to be given to others, except when necessary for the
interoperability of the independently created computer program; or
(c) to be used for the development, production or marketing of a
computer program substantially similar in its expression, or for any
other act which infringes copyright.

3. In accordance with the provisions of the Berne Convention for the
protection of Literary and Artistic Works, the provisions of this
Article may not be interpreted in such a way as to allow its
application to be used in a manner which unreasonably prejudices the
rightholder's legitimate interests or conflicts with a normal
exploitation of the computer program.

unless I misunderstood something, the above says that it is perfectly
legal to study Matlab code in order to achieve compatibility. It seems
even allowed to reverse-engineer formats or even decompile binaries
for that purpose :)

What is not allowed is copying code from Matlab to Octave (which is
not questioned here). But looking at Matlab code, learn the algorithm,
then implement the same in Octave, seems legal, at least in the EU.
Not that I advise others to do it. Anyway, that would spoil all the
fun.

-- 
RNDr. Jaroslav Hajek, PhD
computing expert & GNU Octave developer
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz



reply via email to

[Prev in Thread] Current Thread [Next in Thread]