[IPOL discuss] python as an addition to c++

Nicolas Limare nicolas.limare at cmla.ens-cachan.fr
Tue Jun 11 08:23:27 CEST 2013


> I will ask some Python experts about the stability and compatibility
> issues explained in my previous mail. If a some stable version is
> possible, then I think the only question remaining is if and how a
> python code can be used by non-python researcher. The rest (sandboxing
> and having reviewers) is only a internal matter for IPOL.

I asked Brian Ganger, co-author of IPython, professor of physics and
active in reproducibility and open science circles. 

-> http://ipython.org/
   http://brianegranger.com/
   http://physics.calpoly.edu/content/faculty_pages/bgranger

He answers on specific questions that:

* We should not use Python3 since most of the scientific community is
  still on Python2 and Python3 is still moving. But we should require
  Python code to be usable at least with Python 2.7.
* There is no guarantee that the Python standard library will be
  backward-compatible, but usually the language is pretty good about that.
* There is *no way* that code written today using numpy/scipy will run
  10 years from now.

On this last point, looking that the numpy creator blog[1] and new
project[2] is not reassuring: the numpy interface should have been
broken earlier in the 1.x series (but only the binary interface) and
they are working now on blaze, a "generalization of numpy".

[1] http://technicaldiscovery.blogspot.jp/2012/12/passing-torch-of-numpy-and-moving-on-to.html
[2] http://blaze.pydata.org/docs/overview.html

Overall, the Python stability gives me mixed feelings. It certainly is
not worse than MATLAB, but it's a clear departure from the simplicity
of our (austere and boring) C/C++ requirements.

Brian Granger also suggests that if we want to work with Python, we
should focus more on the software quality than on the long-term
stability; he recommends to strictly require extensive test suites and
very complete documentations, all verified by competent reviewers.

I think this is difficult because of the general lack of software
engineering training of the applied math research community, a
training that would go far beyong "being able to use a computer to
solve a problem" and include the understanding of software development
problems, methods and tools. But this is a matter of public research
and academic policy, our of reach for a single journal.

-- 
Nicolas LIMARE - CMLA - ENS Cachan         http://limare.perso.math.cnrs.fr/
IPOL journal                                             http://www.ipol.im/
-> image processing, reproducible research, open science
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <https://tools.ipol.im/mailman/archive/discuss/attachments/20130611/13b3d4e3/attachment.pgp>


More information about the discuss mailing list