octave-maintainers
[Top][All Lists]
Advanced

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

classdef support for octave


From: Michael Goffioul
Subject: classdef support for octave
Date: Wed, 3 Sep 2008 17:50:07 +0200

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.

Attachment: classdef.h.gz
Description: GNU Zip compressed data

Attachment: classdef.cc.gz
Description: GNU Zip compressed data


reply via email to

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