Over the past half a year I became interested
in the julia programming language.
It is a rather recent language (version 1.0.0 just released last August),
which promises to provide a modern approach to scientific computing.
From my experience so far, I like julia a lot.
All aspects of the code, let it be parallelisation, vectorisation,
macros, generic code and so on, are consistently designed and fit together very well.
In contrast to e.g. python, it is thus not required
to employ a specialised external package
with its associated way of doing the computation in parallel for a
large-scale problem.
In julia parallelisation is usually automatic or can be added with little manual effort.
Whilst julia code might not necessarily beat C++ code with respect to
performance in all cases,
it certainly is written much faster.
To test julia in a larger setting than just a toy project,
I decided to work towards a julia toolbox for coding and experimenting
with self-consistent field algorithms.
Over the summer Tobias Wackenhut participated in the development
during his internship with us in Heidelberg.
After about two solid months of coding, mostly from his end,
a first version with support for solving Hartree-Fock problems
has now been implemented.
For further details, the project code and some examples, see the SelfConsistentField.jl project page on github.