[SciPy-dev] implementing IDL, Matlab, etc. functionality

John Hunter jdhunter at ace.bsd.uchicago.edu
Mon May 2 10:58:09 CDT 2005

>>>>> "Joe" == Joe Harrington <jh at oobleck.astro.cornell.edu> writes:

    Joe> sign that right away.  So, it makes some sense to set up some
    Joe> trades: I can write a Matlab -> Python converter if you'll do
    Joe> it for IDL.  All that's needed is for each side to provide
    Joe> examples of code in the proprietary language that they have
    Joe> written themselves, along with descriptions of what it does
    Joe> and sample inputs and outputs.  That plus commercial books on
    Joe> the languages should provide all the information we need.

Personally, I don't thinks this is a good use of manpower.  matlab and
IDL are both pretty crappy languages.  That's why people don't want to
use them.  octave already provides a matlab clone (eg can run m-files)
but a lot of people don't use it because it never works as well as the
original but has all the faults of the original (except cost).  Octave
is always several versions behind -- an open source project simply
can't keep up with the manpower behind matlab or IDL in terms of a
feature-by-feature implementation.  Users then get frustrated when
they try and run their scripts and although a few scripts work, many
don't.  Look, we don't even have full matlab matfile support, much
less the capability to clone matlab or IDL (and good luck with the
matlab/IDL API, MEX files etc, on which many matlab extensions depend
(eg wavelab).  Providing a translator essentially creates false
expectations and dissatisfied users.

I think development effort should be put into making the python
platform as compelling as possible, not in trying to emulate a
suboptimal language in python.  People can convert -- I used matlab
for 8 years and had an enormous code base and just walked away.  I
never tried to run my mfiles in python, I just implemented the missing
functionality in python.  Granted, this means some users will never
switch from IDL or matlab to python but that's fine, many will,
especially if we spend our effort making better tools (eg a wavelet
library for scipy) and providing documentation like "python for IDL
users" and "python for matlab users".  Give them things that they can
easily do in python that are painful in matlab/IDL and most of them
will bite the bullet.


More information about the Scipy-dev mailing list