help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Opinions on Matlab compatibility, Octave development


From: Judd Storrs
Subject: Re: Opinions on Matlab compatibility, Octave development
Date: Wed, 2 Jun 2010 10:43:31 -0400

2010/6/2 Jordi Gutiérrez Hermoso <address@hidden>:
> I am wondering, how do people feel about this at the moment? Playing
> the compatibility game does seem quite boring, but it's a very
> frequent request from Octave users. Furthermore, Octave has been
> listed in GNU's high priority project list[2] for some time as a
> replacement for Matlab.

Personally I think the Matlab language does many things wrong and
sometimes I wish octave users and developers had more exposure to IDL
(not that I would wish IDL on my enemies...). IDL also does many
things wrong and can be very difficult to learn and way frustrating to
maintain, but IMHO the IDL approach is superior in many areas.
Mathworks seems to finally be getting around to trying to copy IDL and
shellac IDL features onto the Matlab language. Mathworks added
JIT--IDL had this way back when it was still called "incremental
compiling" and the new OOP style reeks of being copied straight from
of IDL. In my mind the major good features that Mathworks has not yet
gotten around to stealing from IDL are:

1) Vastly better handling of optional parameters and flags. Octave
added defaults which is a step in the correct direction. Matlab's
"property",value pairs are ridiculously stupid in comparison to the
IDL approach.

2) Pointers. Matlab's response to pointers was cell arrays--which
really isn't really much of a response if you're trying to build
something like a doubly linked list.

3) Pass by reference semantics. I know this seems to be a holy war.
Apparently octave users/developers have swallowed Matlab's FUD. IDL's
interpreter knows about intermediate or temporary values and will
operate on them in place if possible. Matlab seems to be adding crap
extensions that can be used to emulate this such as shared memory
segments. I believe Jaroslav has added this sort of thing now for the
++ and -- octave extensions so maybe we're moving in the right
direction here.

4) Powerful generic visualization utilities. Matlab's efforts in this
realm are pathetic.

That's not to say that IDL doesn't have problems and annoyances--it
has probably more than it's fair share. At this point I prefer to use
octave over Matlab and IDL because octave sucks way less than either
Matlab or IDL.

Anyway, all I'm trying to say is that Matlab is a pile of populist
crap so I also wouldn't place too much weight on compatibility.


--judd



reply via email to

[Prev in Thread] Current Thread [Next in Thread]