Category:Development

From Octave
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This page contains links to pages of interest to Octave developers.

πŸ’‘ Getting started πŸ”°

πŸ”¬ Octave development

Info icon.svg
Attend our next Online Developer Meeting πŸ™‚πŸ’¬ (See all previous meetings)

πŸ› οΈ Building

πŸ”§ Tools

  • Mercurial -- How to use Octave's version control scheme, creating patches (changesets).
  • Doxygen -- Documentation for C++ files
  • ccache -- How to faster compile Octave.
  • Editors -- A list of editors supporting Octave syntax highlighting.

βš–οΈ Testing

🐞 Debugging

πŸŽ‰ Releasing

🎯 Goals for upcoming releases

As discussed in the Online Developer Meeting (2020-10-27), this wiki section is for a list of possible goals for the next release. Although anyone may edit the wiki, this section is intended for active developers, not a place to dump wishlist items or feature requests. Please create a subsection for your ideas/priorities.

jwe priorities

See also JWE Project Ideas for additional info about some of these items.

Large New Features

  • Compatible arguments block (some work has been done; need to execute actions when functions are called)
  • Compatible local functions
  • Compatible string class
    • Define class itself ([initial implementation?)
    • Construct strings objects from double quoted strings (painful transition).
  • Compatible table class (initial implementation?)
  • Create a low-level interface to HDF5 functions
    • Support Matlab's HDF5-based MAT file format using the proposed low-level interface to HDF5 functions
    • 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 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
  • Use classdef for handle graphics?

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

πŸ’‘ Project ideas and work in progress

Other