help-octave
[Top][All Lists]
Advanced

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

Re: Octave Compatiblity with MatLAB


From: David Bateman
Subject: Re: Octave Compatiblity with MatLAB
Date: Fri, 14 Sep 2007 09:27:20 +0200
User-agent: Thunderbird 1.5.0.7 (X11/20060921)

Andreas Romeyke wrote:
> Hi,
>
> Am Thu, 13 Sep 2007 12:08:16 -0400
> schrieb "Anderson, Gregg T CIV USAF AFRL/MLPJ"
> <address@hidden>:
>
>   
>> my WindowsXP machine. What are the latest compatility issues with,
>> specifically MatLAB? I read the FAQ on Octave/MatLAB compatility.
>> Apparently that hasn't been updated since Feb '98. Anything more
>>     
>
> In my experiences with EEGLab-Toolbox and in development of a testsuite
> for it the most occured show stoppers seems to be:
>
> 1. Octave needs a comma  as separator in cell arrays. In Matlab it is
> your choise to use comma or space only.
>   
No it doesn't. I just tried

octave:1> a = {1 2}
a =

{
  [1,1] =  1
  [1,2] =  2
}

worked fine.. What you might mean is something like "a = {sin (1) 0}" is
illegal, but it is in matlab as well. The issue is that as matlab chose
in their wisdom to allow spaces to separate elements of an array (cell
or otherwise), the space between "sin" and "(1)" is interpreted as a new
element.

> 2. Octave parses the whole file. This IMHO is a positive issue. Matlab
> evaluates only the code branch it will interpret actually.
>   
true.
> 3. Octave could not handle all UI-commands at the moment. This includes
> set/get/gca/gcf/jet/uicontrol/uimenu/box/camlight/lighting/rotate3d and
> so on. In the testsuite I use dispatch to call wrappers for them if
> needed.
>   
jhandles in octave-forge has some UI stuff that is compatible, but not
all of it.

> 4. Octave does not understand nested functions, I think.
>   
This is definitely an issue. The problem is matlabs scoping rules for
nested function are different than sub-functions.. I believe that this
scoping rules lead to hard to debug code, but some users seem to like
nested functions.

> 5. Octave does not processes classes (see @class discussion)
>   
Code already exists in the "object-branch" of the CVS. Once Octave 3.0
is released (real soon now), it will become the 3.1 branch. John even
thought the new code would make implementing nested functions easier.

Regards
David

-- 
David Bateman                                address@hidden
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph) 
Parc Les Algorithmes, Commune de St Aubin    +33 6 72 01 06 33 (Mob) 
91193 Gif-Sur-Yvette FRANCE                  +33 1 69 35 77 01 (Fax) 

The information contained in this communication has been classified as: 

[x] General Business Information 
[ ] Motorola Internal Use Only 
[ ] Motorola Confidential Proprietary



reply via email to

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