Category:Development: Difference between revisions

Line 55: Line 55:
:''See also [[JWE Project Ideas]] for additional info about some of these items.''
:''See also [[JWE Project Ideas]] for additional info about some of these items.''


* Bug fixes, especially those related to compatibility issues.
==== Large New Features ====
* Work through the open bug reports for which patches have been submitted. Review/apply/reject and close as many of these reports as possible.
* Compatible arguments block ([https://savannah.gnu.org/bugs/?func=detailitem&item_id=59405 some work has been done]; need to execute actions when functions are called)
* Refactor/rewrite code for handling load path.
* Compatible local functions
* Refactor/rewrite exist and which functions.
* Compatible string class
* Create a low-level interface to HDF5 functions.
** Define class itself ([[https://github.com/apjanke/octave-tablicious/inst initial implementation]?)
* Support Matlab's HDF5-based MAT file format using the proposed low-level interface to HDF5 functions.
** Construct strings objects from double quoted strings (painful transition).
** Allow all types of function handles to be saved and loaded.
* Compatible table class ([https://github.com/apjanke/octave-tablicious initial implementation]?)
** Allow [[classdef]] objects to be saved and loaded.
* Create a low-level interface to HDF5 functions
* Replace the [[GUI terminal widget|terminal widget in the GUI]].
** Support Matlab's HDF5-based MAT file format using the proposed low-level interface to HDF5 functions
* Accept Matlab's new argument validation syntax in parser.
** Allow all types of function handles to be saved and loaded
** Allow [[classdef]] objects to be saved and loaded
* Make import feature work
 
==== Internal Improvements ====
* Refactor/rewrite code for handling load path
* Refactor/rewrite exist and which functions
* Refactor function objects
* Refactor broadcasting and make it work for sparse matrices
* Replace the [[GUI terminal widget|terminal widget in the GUI]]
* Write stack-based byte-code interpreter that doesn't result in deeply nested function calls to evaluate code
* JIT compiler
* Move more code inside octave namespace
* Eliminate mutable class data where possible
* Eliminate singleton objects
 
==== Other ====
* Bug fixes, especially those related to compatibility issues
* Work through the open bug reports for which patches have been submitted - review/apply/reject and close as many of these reports as possible


= 💡 [[:Category:Project_Ideas|Project ideas]] and work in progress =
= 💡 [[:Category:Project_Ideas|Project ideas]] and work in progress =