Project liboctave 4.2: Difference between revisions

Jump to navigation Jump to search
Warn outdated.
No edit summary
(Warn outdated.)
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Warning|This page is outdated (July 2019).}}
Especially for new developers it is hard to get started with liboctave, one of the core elements of GNU Octave. Liboctave defines and implements data types, operators, and much more. To change that state this long term project has the following goals:
Especially for new developers it is hard to get started with liboctave, one of the core elements of GNU Octave. Liboctave defines and implements data types, operators, and much more. To change that state this long term project has the following goals:


Line 4: Line 6:
* Bring all the data types into order
* Bring all the data types into order
* Reduce the code to a sufficient minimum
* Reduce the code to a sufficient minimum
* Remove Makros where possible
* Remove macros where possible


= Milestone 1 - The Array hierarchy =
= Milestone 1 - The Array hierarchy =
Line 12: Line 14:
[[File:liboctave-arrays-2014-11-26.jpg]]
[[File:liboctave-arrays-2014-11-26.jpg]]


Questions:
Questions / Tasks:
 
* On any changes to this structure there is an API-Constraint with [https://www.gnu.org/software/octave/doc/interpreter/Oct_002dFiles.html Oct-Files].
** TODO: Document inside the C++-Classes that this are API relevant classes.


* Identify the difference between for example Array<char>, charNDArray, and charMatrix
* Identify the difference between for example Array<char>, charNDArray, and charMatrix
Line 21: Line 26:
* Is there a necessity to specialize?
* Is there a necessity to specialize?
** e.g. ComplexRowVector and RowVector vs. RowVector<T>
** e.g. ComplexRowVector and RowVector vs. RowVector<T>
* Does every file name reflect its content? (Nested classes, etc.)

Navigation menu