I heard a lot about Julia language over the last year and last week 
had a conversation with a colleague, who attended Juliacon and was 
quite impressed. We talked about possibly moving some of our fluid 
dynamics projects to Julia, so that for a new student who is joining
the project it would be much easier to start without going through 
learning c++ and/or fortran. 


I am a physicist and most of my day job is some form of scientific 
computing. My current default working environment is python 
(numpy, scipy, sympy, matplotlib) + fortran (f2py) when some part 
of my code needs to speed up. Yesterday I decided to start a a 
new, relatively easy project as a simple example for an upcoming 
paper. So I thought this might be a good occasion to start 
learning Julia language to code a simple dynamical systems toolbox 
in it, which might be useful for other people as well. 


Basic functionality I need from the language are these:


- Symbolic differentiation (for computation of Jacobians)
- Numerical integration of ODEs (a general purpose integrator, such as
lsoda from odepack, wrapped in scipy.integrate.odeint)
- Linear algebra functions
- Interpolation
- Plotting in 2D and 3D


After reading The Julia Express and parts of the documentation, I 
thought that such a project is not a good investment, at least for 
now. The reason is all the functionality I listed above are provided
by external packages, partially excluding linear algebra functions.
I'm aware that I can use specific packages for all the functionality
I mentioned above, but each such package is maintained by different
people, and they can change or become obsolete. I can also find some
Fortran/C code, and include in Julia, and have all these 
functionality, but then what is the advantage of using Julia, as 
opposed to, say, python?


In a more general sense, I am a little bit turned off by the 
presence of an external package for almost every task I need to 
do. I can understand this kind of structure in python as it is a 
general purpose language. But since Julia is a language 
specifically for scientific computation, I'd be happy to have 
something like the basic functionality of MATLAB in the main 
language. 


I understand that Julia is under development and there is a lot to
change and to be added, but I am wondering what is the Julia's future 
directions regarding these issues? I did some search, but could not 
find an answer to this question, so I apologize if this was already 
answered elsewhere. 
I heard a lot about Julia language over the last year and last week 
had a conversation with a colleague, who attended Juliacon and was 
quite impressed. We talked about possibly moving some of our fluid 
dynamics projects to Julia, so that for a new student who is joining
the project it would be much easier to start without going through 
learning c++ and/or fortran. 

I am a physicist and most of my day job is some form of scientific 
computing. My current default working environment is python 
(numpy, scipy, sympy, matplotlib) + fortran (f2py) when some part 
of my code needs to speed up. Yesterday I decided to start a a 
new, relatively easy project as a simple example for an upcoming 
paper. So I thought this might be a good occasion to start 
learning Julia language to code a simple dynamical systems toolbox 
in it, which might be useful for other people as well. 

Basic functionality I need from the language are these:

- Symbolic differentiation (for computation of Jacobians)
- Numerical integration of ODEs (a general purpose integrator, such as
lsoda from odepack, wrapped in scipy.integrate.odeint)
- Linear algebra functions
- Interpolation
- Plotting in 2D and 3D

After reading The Julia Express and parts of the documentation, I 
thought that such a project is not a good investment, at least for 
now. The reason is all the functionality I listed above are provided
by external packages, partially excluding linear algebra functions.
I'm aware that I can use specific packages for all the functionality
I mentioned above, but each such package is maintained by different
people, and they can change or become obsolete. I can also find some
Fortran/C code, and include in Julia, and have all these 
functionality, but then what is the advantage of using Julia, as 
opposed to, say, python?

In a more general sense, I am a little bit turned off by the 
presence of an external package for almost every task I need to 
do. I can understand this kind of structure in python as it is a 
general purpose language. But since Julia is a language 
specifically for scientific computation, I'd be happy to have 
something like the basic functionality of MATLAB in the main 
language. 

I understand that Julia is under development and there is a lot to
change and to be added, but I am wondering what is the Julia's future 
directions regarding these issues? I did some search, but could not 
find an answer to this question, so I apologize if this was already 
answered elsewhere. 

Reply via email to