octave-maintainers
[Top][All Lists]
Advanced

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

Re: Algorithmic Differentiation in Octave


From: Brad Bell
Subject: Re: Algorithmic Differentiation in Octave
Date: Tue, 24 Jan 2017 13:59:15 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0

On 01/24/2017 01:37 PM, Richard Crozier wrote:
On 24/01/17 20:13, Olaf Till wrote:
On Tue, Jan 24, 2017 at 12:38:55PM -0700, Brad Bell wrote:
On 01/24/2017 12:32 PM, Olaf Till wrote:
... snip ...
It seems you've been able to create Octave plugins with swig. There
have been problems in the past with swig and Octave. I don't know the
current state. But it makes me a bit uneasy to depend on swig being
up-to-date with Octave, since AFAIK the Octave part of swig is
maintained independently from Octave. But maybe we could use the
generated code directly for adaptions to future Octave versions, if
swig should not be up-to-date anymore.

Olaf

I have kept to a very minimal swig interface to make it more robust. In
fact, I have implemented my own version of exception handling
http://www.seanet.com/~bradbell/cppad_swig/error_message.htm
because I could not get the swig version to work reliably. See
    http://www.seanet.com/~bradbell/cppad_swig/swig_xam.i.htm
For some swig examples I used to test what worked.

Ok, sounds good again.

Unrelated: Your license is AGPL3. Combined with Octave, in particular
with further Octave plugins used, your code may get _indirectly_
accessible over network. Does this mean that your code, if modified by
us, should always give a 'prominent notice' to the user on where the
source code is located?

Olaf

PS: We should better keep the list CCed, but I've switched to the
maintainers list now.

Is some other license preferred by Octave ?


The dev version of SWIG has a new interface method with a classdef based wrapper which is the same for both Matlab and Octave. It is conceptually similar to:

https://uk.mathworks.com/matlabcentral/fileexchange/38964-example-matlab-class-wrapper-for-a-c++-class

I haven't used SWIG for this, but I have used this method for wrapping C++ classes for Octave/Matlab.

Richard

Does it look the same on the Swig side. My goal to support a very light-weight Swig interface to works for all scripting languages. Then each individual language might have a specific package that wraps the interface to something more convent for that language.

I have take care to make the interface efficient, and to minimize the amount of C++ that gets processed by swig (long story with details if you would like more).



reply via email to

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