after 3.2

Ben Abbott bpabbott at mac.com
Thu Mar 12 19:04:04 CDT 2009


On Mar 13, 2009, at 3:55 AM, John W. Eaton wrote:

> Here's a list of possible projects for after 3.2.
>
> I've tagged completed items with an "X" and items for which some work
> has been done with an "+".
>
>  * Namespace(s) for Octave sources.
>
>  * Objects:
>      - Operator overloading vs. constant folding
>      - Overloading built-in classes (double, etc.)
>
>  * Profiler.
>
>  * Nested functions.
>
>  * Graphics:
>      + Fonts and text objects
>      + Refactor base_properties
>      + Specific types for properties with improved property value
>        checking
>      + Implement the addprops function allow additional properties
>        to objects
>      + add the hggroup object that has no fixed properties for use
>        by barseries, etc.
>      + Add callback DeleteFcn/CreateFcn to objects
>      + Allow listener functions to be added to objects
>      + Clean separation of backend from property database
>      + Implement experimental backend based on OpenGL and GUI
>        toolkit
>
>  * Avoid segfault problem when clearing dynamically linked functions
>    that create user-defined types.
>
>  * Move code to external packages
>      - optimization?
>      - signal?
>      - statistics?
>
>  * Handle block comments inside [] or {} and also in the group of
>    comments following a continuation character, etc.  See the FIXME
>    comments in lex.l.
>
>  + Mixed sparse x diagonal matrix operations (may be included in 3.2).
>
>  * Use templates instead of macros where possible.
>
>  * Update the configure script and make checks for header files and
>    libraries more consistent (maybe we could recruit an autoconf
>    expert to help with this job).
>
>  * Rewrite Makefiles to avoid recursive make (see
>    http://miller.emu.id.au/pmiller/books/rmch/ for some ideas).
>
> For me, the first six items above have a fairly high priority.
> Especially graphics and the profiler.
>
> If you have comments, suggestions, or additions, please send them to
> me or to the list for discussion, and I'll update the list and
> repost.
>
> At this point, it can be something of a wish list, but the items
> should be things that we have some chance of implementing before the
> next release (after 3.2).  By the time we make the 3.2 release, we
> should have this list narrowed down to maybe the top 10 items as
> prioity projects.  I'd still like to see us reduce the interval
> between stable releases to something like 6-9 months, so I think doing
> that will require focusing on a smaller list of projects for each
> release, then making the release and moving on instead of allowing the
> list of projects to continually expand (this is something I need to
> work on as much as anyone else).
>
> jwe


Both addproperty and addlistener (as well as dellistener) are already  
available (and being used). However, I'd like to have a  
deleteproperty, so that properties needed on a temporary basis can be  
deleted when their no longer needed (we'd need a deleteable attribute  
added to such examples).

Also, Matlab's addproperty has a different purpose.

	http://www.mathworks.com/access/helpdesk/help/techdoc/ref/addproperty.html

For compatibility with Matlab, Octave should use {set,get,is,rm}appdata.

	http://www.mathworks.com/access/helpdesk/help/techdoc/ref/setappdata.html
	http://www.mathworks.com/access/helpdesk/help/techdoc/ref/getappdata.html
	http://www.mathworks.com/access/helpdesk/help/techdoc/ref/rmappdata.html
	http://www.mathworks.com/access/helpdesk/help/techdoc/ref/isappdata.html

More detailed and robust font handling could be added as well. Using  
fontfonfig it is possible to obtain the information needed to match  
fonts (say when Helvetica is missing, the information needed to find  
an equivalent is available). For anyone interested, the link below has  
more detailed information about what information is available from  
fontconfig.

	http://fontconfig.org/fontconfig-user.html

Ben




More information about the Octave-maintainers mailing list