Overloaded operators support?
I am checking if https://www.codac.io/install/04-start-matlab-project.html could support Octave in addition to MATLAB. Basically Codac Python project defines classes such as Interval
, Tube
which overload typical operators such as +
, -
, etc.
The first adaptation that seemed necessary was related to the import
command (as suggested in https://wiki.octave.org/Pythonic) but I managed to get a workaround, see https://gist.github.com/lebarsfa/ebc19b143df77753842f920b4b680b84.
The main issue that remains for now is that it seems I would need to replace +
, -
, *
, /
, ==
, !=
, etc. in many places (e.g. if I want to test https://github.com/codac-team/codac/blob/master/examples/tuto/01_getting_started/a01_getting_started.m) with __add__()
, __sub__()
, __neg__()
, __mul__()
, __truediv__()
, __eq__()
, __ne__()
, etc. methods, which might not be easily automated (note that not all operators are supported by MATLAB but the most typical are, see the bottom of https://fr.mathworks.com/help/matlab/matlab_external/differences-between-matlab-python.html).
Are there any ideas on how overloaded operators could be supported in Octave+Pythonic?