The major languages for computing are Fortran, C, or C++ in science
community. But they become cumbersome when being used as a prototype language
where script languages.just fit well.
Script languages are abound even for science computing. The most popular
ones are Matlab for Numeric
Analysts, Mathematic, Maple for mathematicians, and freewares like
Octave, Tela, Scilab etc for persons who
may be poor and want ultimate power and flexibility
- Octave is written
in C++ and based on a C++ matrix library liboctave. Well maintained and
most compatible with Matlab among all the freewares.
- Scilab is
developed by INRIA, and is mainly Fortran code and supports parallel
computing.
- Tela by
Pekka Janhunen is a small and fast scripting language. It supports
multi-dimensional array.
For C++ code to interface with matlab, octave and tela, matwrap is interesting.
Personally, I used Octave and tela for a while and switched to Python when I found it. The major
reasons are:
- Python is object-oriented and hence easier to handle not small
projects.
- Python has a rich set of extensions (modules).
- Python is well documented and easy to embed or extend.
- Python has a good debugger pdb
- Python has a profiler
- Python supports multi-dimensional array with NumPy
- It is easy to build GUI using Python.
- The most important of all, it is really easy to interface with
Fortran/C/C++ codes!
The official home of Python is the
greatest Python site.