classdef support for octave
Michael Goffioul
michael.goffioul at gmail.com
Wed Sep 3 10:50:07 CDT 2008
Hi all,
I've been thinking for a while about classdef support in octave,
mainly because this oo-system seems to be closely linked
to the graphics system. By looking at it at an early stage, I hope
that it could be made quite compatible with the current graphics
code, such that both can co-exist and interact nicely.
Yesterday, I decided to give it a try by laying down what I had
more or less in mind (before forgetting it...). You can see this
embryonic result in attachment. Without going too much into
details, the idea is to build the system upon a simple object
type (a set of slots) and to provide programmatic interfaces on
top of it. This allows to easily make objects accessible from the
interpreter. The implementation is partially inspired by LISP and
the MOP. The code in attachment only shows the very beginning
of the bootstrap code, but I'm focusing on the framework to see
what are the pro's and con's of the design choices I made. This
stuff can completely change in the future.
This work is a long-term issue and I only plan to work on it from
time to time (when I get bored doing something else...). The code
has the form of an oct-file (normally it should compile fine) and I
plan to keep this code outside of octave for now (which also means
no syntactic sugar in the interpreter).
Now come the questions. Do you find this interesting? Do you think
the code in attachment might be a way to go? Who's willing to
join?
The only things you can do with the code currently are:
init_classdef
c = get_class ('meta.class')
% any other meta.class property should be OK.
c.Properties
% does nothing as some code is missing
c.fromName ('meta.property')
Bye,
Michael.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: classdef.h.gz
Type: application/x-gzip
Size: 2338 bytes
Desc: not available
Url : https://www-old.cae.wisc.edu/pipermail/octave-maintainers/attachments/20080903/72409b00/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: classdef.cc.gz
Type: application/x-gzip
Size: 3504 bytes
Desc: not available
Url : https://www-old.cae.wisc.edu/pipermail/octave-maintainers/attachments/20080903/72409b00/attachment-0001.bin
More information about the Octave-maintainers
mailing list