k*r
2 楼
the matlab replacement ?
i am now tired of those greedy companies' for-profit software.
i am now tired of those greedy companies' for-profit software.
P*a
3 楼
这个真的是盘子么?
【在 z****u 的大作中提到】
: http://acg.178.com/201107/104524999109.html
【在 z****u 的大作中提到】
: http://acg.178.com/201107/104524999109.html
a*s
4 楼
scilab is also pretty good.
m*g
6 楼
I will recommend python.
f*l
7 楼
这是让吃饭的时候也不忘YY么?……
i*f
8 楼
Octave is very slow compared to matlab if our code is hard to get vertorized
. It
maybe because that octave does not have a Just-In-Time compiler (don't know
if there're third party JIT for octave)
But matlab scripting language sucks. that's another reason I hate matlab (
and don't like octave)
try numPy/sciPy if you can (does not have JIT either, but there's a 3-rd
party JIT called psyco only for x86 CPU).
【在 k*****r 的大作中提到】
: the matlab replacement ?
: i am now tired of those greedy companies' for-profit software.
. It
maybe because that octave does not have a Just-In-Time compiler (don't know
if there're third party JIT for octave)
But matlab scripting language sucks. that's another reason I hate matlab (
and don't like octave)
try numPy/sciPy if you can (does not have JIT either, but there's a 3-rd
party JIT called psyco only for x86 CPU).
【在 k*****r 的大作中提到】
: the matlab replacement ?
: i am now tired of those greedy companies' for-profit software.
a*4
9 楼
这样会不会有点脏啊?
o*n
10 楼
scipy is weaker on plotting, though matlab is not that good either.
vertorized
know
【在 i*****f 的大作中提到】
: Octave is very slow compared to matlab if our code is hard to get vertorized
: . It
: maybe because that octave does not have a Just-In-Time compiler (don't know
: if there're third party JIT for octave)
: But matlab scripting language sucks. that's another reason I hate matlab (
: and don't like octave)
: try numPy/sciPy if you can (does not have JIT either, but there's a 3-rd
: party JIT called psyco only for x86 CPU).
vertorized
know
【在 i*****f 的大作中提到】
: Octave is very slow compared to matlab if our code is hard to get vertorized
: . It
: maybe because that octave does not have a Just-In-Time compiler (don't know
: if there're third party JIT for octave)
: But matlab scripting language sucks. that's another reason I hate matlab (
: and don't like octave)
: try numPy/sciPy if you can (does not have JIT either, but there's a 3-rd
: party JIT called psyco only for x86 CPU).
g*n
11 楼
穷人版人体陈~~~
b*l
12 楼
matlab language 那是相当的 decent 啊。
vertorized
know
【在 i*****f 的大作中提到】
: Octave is very slow compared to matlab if our code is hard to get vertorized
: . It
: maybe because that octave does not have a Just-In-Time compiler (don't know
: if there're third party JIT for octave)
: But matlab scripting language sucks. that's another reason I hate matlab (
: and don't like octave)
: try numPy/sciPy if you can (does not have JIT either, but there's a 3-rd
: party JIT called psyco only for x86 CPU).
vertorized
know
【在 i*****f 的大作中提到】
: Octave is very slow compared to matlab if our code is hard to get vertorized
: . It
: maybe because that octave does not have a Just-In-Time compiler (don't know
: if there're third party JIT for octave)
: But matlab scripting language sucks. that's another reason I hate matlab (
: and don't like octave)
: try numPy/sciPy if you can (does not have JIT either, but there's a 3-rd
: party JIT called psyco only for x86 CPU).
i*f
14 楼
An example:
if "j" is used to indicate complex numbers: 1+j. if you happened to use it
as an index in the same scope, then you are busted. There is even no warning
(don't know the situation now. haven't used matlab for a while)
Another example:
One can use "function" to define a subroutine. And you can choose to use
endfunction to end the definition (or choose not). And Matlab restricts you
from defining two separate functions in the same script file...
【在 b******l 的大作中提到】
: matlab language 那是相当的 decent 啊。
:
: vertorized
: know
if "j" is used to indicate complex numbers: 1+j. if you happened to use it
as an index in the same scope, then you are busted. There is even no warning
(don't know the situation now. haven't used matlab for a while)
Another example:
One can use "function" to define a subroutine. And you can choose to use
endfunction to end the definition (or choose not). And Matlab restricts you
from defining two separate functions in the same script file...
【在 b******l 的大作中提到】
: matlab language 那是相当的 decent 啊。
:
: vertorized
: know
r*y
15 楼
matlab 里不会出现这样的问题吧. 如果你不给 i 赋予别的值, i 就是 sqrt(-1).
但是你要是赋予i 别的值, 那么i 就是新赋予的值. 这个时候 就不能用 i表示
sqrt(-1)了
warning
you
【在 i*****f 的大作中提到】
: An example:
: if "j" is used to indicate complex numbers: 1+j. if you happened to use it
: as an index in the same scope, then you are busted. There is even no warning
: (don't know the situation now. haven't used matlab for a while)
: Another example:
: One can use "function" to define a subroutine. And you can choose to use
: endfunction to end the definition (or choose not). And Matlab restricts you
: from defining two separate functions in the same script file...
但是你要是赋予i 别的值, 那么i 就是新赋予的值. 这个时候 就不能用 i表示
sqrt(-1)了
warning
you
【在 i*****f 的大作中提到】
: An example:
: if "j" is used to indicate complex numbers: 1+j. if you happened to use it
: as an index in the same scope, then you are busted. There is even no warning
: (don't know the situation now. haven't used matlab for a while)
: Another example:
: One can use "function" to define a subroutine. And you can choose to use
: endfunction to end the definition (or choose not). And Matlab restricts you
: from defining two separate functions in the same script file...
i*f
18 楼
I agree. I've been using ii,jj for many years after being biten by the
crappy i,j trap.
While we SHOULD do it in a better manner, there at least shouldn't be any
problem to use just "i" or "j". That's why I think it's a bad language,
along with some other examples.
idx_
【在 b******l 的大作中提到】
: 对呀,就是这样么。
: 另外,好的习惯是用 ii, jj 来表示 index。或者,更变态的,我经常用 idx_i,idx_
: j,或者用 X.i, X.j 来表示。后者其实是很好的 matlab 编程习惯,可以避免当有多
: 个循环时,循环变量出问题。
crappy i,j trap.
While we SHOULD do it in a better manner, there at least shouldn't be any
problem to use just "i" or "j". That's why I think it's a bad language,
along with some other examples.
idx_
【在 b******l 的大作中提到】
: 对呀,就是这样么。
: 另外,好的习惯是用 ii, jj 来表示 index。或者,更变态的,我经常用 idx_i,idx_
: j,或者用 X.i, X.j 来表示。后者其实是很好的 matlab 编程习惯,可以避免当有多
: 个循环时,循环变量出问题。
b*l
19 楼
这个是 fast prototyping 用的。代价吧。
有多
【在 i*****f 的大作中提到】
: I agree. I've been using ii,jj for many years after being biten by the
: crappy i,j trap.
: While we SHOULD do it in a better manner, there at least shouldn't be any
: problem to use just "i" or "j". That's why I think it's a bad language,
: along with some other examples.
:
: idx_
有多
【在 i*****f 的大作中提到】
: I agree. I've been using ii,jj for many years after being biten by the
: crappy i,j trap.
: While we SHOULD do it in a better manner, there at least shouldn't be any
: problem to use just "i" or "j". That's why I think it's a bad language,
: along with some other examples.
:
: idx_
b*l
21 楼
同意这个是糟糕的 design。mathwork 的解释是,用 complex 这个函数:
The complex function provides a useful substitute for expressions such as
a + i*b or a + j*b
in cases when the names "i" and "j" may be used for other variables。
there'
【在 i*****f 的大作中提到】
: All main stream scripting languages (dynamically typed) seems have not
: problem like that.
: E.g., in python you'll always have 1+1j (explicit) so even you do j=1 there'
: s no such problem. I think it's just a poor design.
The complex function provides a useful substitute for expressions such as
a + i*b or a + j*b
in cases when the names "i" and "j" may be used for other variables。
there'
【在 i*****f 的大作中提到】
: All main stream scripting languages (dynamically typed) seems have not
: problem like that.
: E.g., in python you'll always have 1+1j (explicit) so even you do j=1 there'
: s no such problem. I think it's just a poor design.
r*t
22 楼
i*f
23 楼
I agree with most parts. //hand
But I have several comments to add:
Toolbox: mostly I use communication toolbox. But I don't think it worths $
100 each copy, because it's not very useful (they could make it useful, but
they don't). There's even a C++ library which is better (easier and more
convenient) to use.
JIT: I think JIT is quite necessary, since there are programs which can
hardly be vectorized.
OO: OO in Matlab is TERRIBLE.
Functions: one function per script file...
cases.
【在 r****t 的大作中提到】
: Functions are not first-class objects. You cannot call such a language
: decent.
: Let alone the terrible OO syntax in Matlab. The only thing I like about
: matlab is the toolboxes and the JIT. Either is not a necessity in most cases.
But I have several comments to add:
Toolbox: mostly I use communication toolbox. But I don't think it worths $
100 each copy, because it's not very useful (they could make it useful, but
they don't). There's even a C++ library which is better (easier and more
convenient) to use.
JIT: I think JIT is quite necessary, since there are programs which can
hardly be vectorized.
OO: OO in Matlab is TERRIBLE.
Functions: one function per script file...
cases.
【在 r****t 的大作中提到】
: Functions are not first-class objects. You cannot call such a language
: decent.
: Let alone the terrible OO syntax in Matlab. The only thing I like about
: matlab is the toolboxes and the JIT. Either is not a necessity in most cases.
相关阅读
请问有没有一两百k左右的linux系统?为什么人们总是在骂gnome, kde, xfce, unity...怎么在图形界面下编辑文件?ubuntu下的邮件服务器怎么做?Binary Compatible RHEL 6.0 Distribution求推荐一个适合做virtualbox guest的发行版请问awk里面能call另一个awk脚本的函数吗?LLVM 2.9 benchmarkPartition & Format hard driveSCO 终于死了ubuntu trash can 管理大有问题有什么C++ profiler好用?Redhat 开发新语言 Ceyloncan i start X with user defined xorg.conf as normal user?为什么苹果的图形界面更流畅?virtualization and CPU designlinux问题Ubuntu install命令后面加“> ./mylogfile.$$ 2>&1”这一串是什么意思呢?chrome上这个网站花屏?