Oi eu sou novo no Octave e mal sei Matlab. Eu estou começando a usar o Octave, mas eu quero escrever código que é compatível com Matlab. Como posso conseguir isso? Eu pensei que o --traditional
bandeira quando o lançamento Octave foi feito para isso, mas por exemplo, o simples not
operador !=
que não é compatível com Matlab ainda funciona:
se7entyse7en@Marvins-MacBook-Air:~/Projects/datascience$ octave --traditional
GNU Octave, version 4.0.0
Copyright (C) 2015 John W. Eaton and others.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. For details, type "warranty".
Octave was configured for "x86_64-apple-darwin15.2.0".
Additional information about Octave is available at http://www.octave.org.
Please contribute if you find this software useful.
For more information, visit http://www.octave.org/get-involved.html
Read http://www.octave.org/bugs.html to learn how to submit bug reports.
For information about changes from previous versions, type "news".
>> 1 != 0
ans = 1
enquanto espero que esta declaração lance um erro. Eu não tentei outras instruções Matlab não compatíveis conhecidas. Então, é possível executar o Octave de uma forma puramente compatível com o Matlab? Ou existem ferramentas que podem analisar o código e avisar se um recurso não compatível foi usado?
Respostas:
3 para resposta № 1O sinalizador destina-se a executar o código MATLAB em OCTAVE sem problemas. Explicações detalhadas são dado aqui na documentação
Para receber um aviso ao usar recursos de idioma que não estão presentes no MATLAB, use o avisoOctave:language-extension
1 para resposta № 2
(Postando isso como uma resposta, já que eu ainda não posso comentar).
Como já foi dito, correndo warning("on", "Octave:language-extension");
como um comando no Octave irá ativar avisos sempre que encontrar sintaxe incompatível com o Matlab.
Para fazer com que você não tenha que digitar este comando todas as vezes, você pode usar o comando .octaverc
-Arquivo.
No OS X e no Linux, esse arquivo deve estar em seu diretório pessoal. No Windows, deve estar sob %userprofile%.octaverc
. Se não estiver lá, você pode criar você mesmo.
E então apenas cole o mesmo comando warning("on", "Octave:language-extension");
para esse arquivo.