octave-maintainers
[Top][All Lists]
Advanced

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

Re: Vector Projection .m file


From: Jordi Gutiérrez Hermoso
Subject: Re: Vector Projection .m file
Date: Thu, 13 Jun 2013 11:37:16 -0400

On 13 June 2013 10:51, Erickson, David
<address@hidden> wrote:

> Thanks for the feedback. I offered it based on the licence
> agreement, not based on relative value. Rules are rules.

Well, the GPL legally only requires you to publish changes under the
same terms if you publish derivative works based on Octave's. But the
spirit of sharing is certainly there. So thanks for sharing back. I am
being honest.

> I can almost hear your smug pompousness.

I am truly sorry. This was not my intention at all. The thing is that
this is an existing problem we have. Our users' highest demand is for
Matlab compatibility. Our users do not care as much for minor
improvements over Matlab. I have myself attempted to add things to
Octave that Matlab didn't have, but I have regretted doing so, because
almost nobody values those extra features, and they sometimes
interfere with existing Matlab-like functionality. The examples I'm
thinking of is our specialised types, like ranges and diagonal
matrices, or the broadcasting I worked on. An example with which I
wasn't involved with the production but have been involved with the
maintenance is the relatively trivial "ols" function which is mostly
superseded by the backslash operater. We get bug reports for ols, so
it becomes a maintenance annoyance, and few people actually use it.

> Maybe you should read Eric Scott Raymond?

esr advocates some things that don't seem to ring true to me. For
example, he says that what he calls open source is a better
development model, but there's no reason why proprietary software
developers should be incompetent. Indeed, we have far more examples of
competent proprietary software in widespread use than free software.

I don't think the real value is in the development model, but in the
freedom afforded by licenses such as the GPL.

> I'll interpret this as Octave is disinterested in code offered up
> that improves the base despite the licence terms.

No, please don't. Your contributions are welcome. This particular one
seems difficult to categorise and to make useful for others. If I were
to need the projection of column vector x onto column vectory y, I
would simply write from memory,

    (x'*y)/(y'*y)*y

It's not the sort of thing that I need frequently enough for a
specialised function nor complicated enough that I can't instantly
recall the formula upon need. It is not that difficult either to look
up the particular formula should I somehow forget it. It would
probably take me longer to remember if the function exists, and if
it's named proj or vector_proj or vectorproj or vproj.

But again, please don't take my word as final on this matter. I only
tentatively proposed that such a contribution would be better suited
for Agora than for core Octave. Should someone else present a
different opinion, I will relent and incorporate the function into
core Octave.

- Jordi G. H.


reply via email to

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