Linked by David Adams on Fri 18th Jun 2010 19:17 UTC
Permalink for comment 430843
To read all comments associated with this story, please click here.
To read all comments associated with this story, please click here.
News
Linked by Thom Holwerda on 05/25/13 0:45 UTC
Linked by Thom Holwerda on 05/24/13 23:59 UTC
Linked by Thom Holwerda on 05/24/13 22:33 UTC
Linked by Howard Fosdick on 05/24/13 21:41 UTC
Linked by Thom Holwerda on 05/24/13 14:44 UTC
Linked by Thom Holwerda on 05/23/13 23:22 UTC
Linked by Thom Holwerda on 05/23/13 22:04 UTC
Linked by Thom Holwerda on 05/23/13 22:01 UTC
Linked by Thom Holwerda on 05/23/13 17:52 UTC
Linked by Thom Holwerda on 05/22/13 22:23 UTC
More News »
Sponsored Links



Member since:
2007-11-04
Maple and Mathematica and on par with Python?
No, I chose Matlab because its syntax is on par with Python in terms of awfulness in my opinion. Python is a good programming language for prototyping and low-performance software, and insane people can even use it for other use cases and get cursed by their users. Just like C#, ActionScript, and Java. But its syntax is just inadapted to scientific calculation. You can use it for that, but it is painful. Matlab has an incredibly crappy syntax which manages to be on par with that of Python in terms of inadaptation, even though it is theoretically suited for the job.
You're preaching a convinced people, though for me GUI programming and calculation should be left to separate languages. I HATE Matlab's syntax. Every time I have to use it, I try my best to remember the commands used to launch the GUI tools and never, ever, use its command line, except when being forced to do so.
"
Why do you separate calculation and GUI? That sounds awfully complicated to me, suddenly you have to learn 2 languages + the glue between them.
Seriously, should any sane people have to use tf([1],[1,1]) or some other trick like s = tf([1, 0]) in order to input 1/(1+s) ? I don't care if transfer functions are treated separately by the software, for me it is just a rational function and should be treated as such.
It seems to me you want symbolic math manipulation not really scientific computing. So something like Mathematica or Sage on the Python side would be more suited to your needs.
"Why are HTML pages unprofessional? That's what pretty much every software manufacturer uses for the help pages AFAIK.
No, they aren't that widespread, except maybe for the content.
"
Actually, that was my point the content is very often HTML, they just write a specific help browser for the html pages
People often use Windows' CHM or some in-house solution, be it only for one good reason : searching. In a good help system like that of Maple, Mathematica, and Matlab, you search for keywords like "polynomial", "linear algebra" or "inequation plot", and you get all the related functions, sorted by relevance order if the guys took some time to polish it. In HTML help, you get a web browser, a tool made for something else which doesn't provide indexed search facilities, and you have to use full-text search in the index, which requires you to know the exact name of the command or the category it's put in, and parse through loads of irrelevant answers.
Agreed a specific documentation search at docs.scipy.org would be great. I disagree however that a webbrowser is the wrong tool, if the HTML pages are well structured and written a browser is just as good a specific help system.
"Also I actually never use the HTML pages or the Matlab help system. I just type "help command"
in the prompt (I do the same in Matlab whenever I have to use it).
1/Is python able to provide in such a case an extensive help page describing command use, options, and examples with results, with links to related topics, in a non-cluttered way like that of Mathematica and Maple ? (the "click-to-expand" way)
"
I can't comment on Mathematica and Maple, but they do provide a rather extensive help, which describes all options etc. There's also the short help which provides you with a short usage string if you use ipython ?<command>
2/Again, this only fits one use case of the help system, namely checking syntax of an already known command. Command discovery is not poor with this help system.
Agreed but in my experience that's not really that much better in matlabs system either, e.g. the last I recall was searching for writing to a text file in an arbitrary format. If I hadn't known fprintf from C I don't think I'd ever found out using the Matlab help system.
"Another thing, if I compare the documentation of the Matlab language (not the commands) to the documentation of the Python language, the Python documentation is way better.
I was talking about the help system shape and use cases, the contents are another thing
"
Well especially if it is taught in courses I'd expect the syntax would be well documented.
"I don't quite get what you mean, something like
def fct(x, *args) ??
Mathematica :
a = 3*x
Result : 3x. Plot(a, {x,0,4}) will work.
Python :
a = 3*x
Result : Undefined symbol "x". Plot will not work.
Things like that make a general-purpose language a pain to use for everything that's mathematics-related. "
Well I can only repeat what I've said above, you really want a symbolic math manipulation, that cannot be provided by a programming language like python and matlab alone. I'd argue that this is another use case entirely, and although there are some packages for python and I think matlab as well. They will never perform as well as a language specifically build for that purpose. However if you want to to numeric simulations (like I do), that often does not fit into systems like Mathematica and I find using a proper language like Python is a lot more comfortable for me than using matlab.