Content from 2020-02
The man-made Hell of dependencies management in HPC software has an
efficient way out: Spack, initially
established at Lawrence Livermore
and actively community-supported manager of program packages and
libraries for supercomputing. It's like e.g. Portage for Gentoo,
but system-agnostic, and does not pollute user's environment since
packages are linked through
RPATH at compile-time instead of through
dynamic (re)setting of environment variables at runtime (as is
pefrormed by hierarchical module systems like
This allows for the impressive
explained in a well-written documentation,
making Spack a very useful cluster management tool.
But not only. A careful reader will be happy to see in it a killer app for actual code development in the chaos vortex of academic & research software.
If you happen to find yourself in HPC research or engineering, you will most probably deal with Fortran codebases at some point. With two major problems that hurt lazy young men's feelings in 2020: 1st being the ambiguity of which instructions from the standard form the desired subset of a useful Fortran number-crunching DSL, and the 2nd is (was) lack of introspection for a (modern) IDE.
While the solution of the first problem is found merely in personal experience and Sacred Wisdom of the Elders (never saw a book on Fortran that did not look like a flat dry reference index), solution for the second is open to the public: Chris Hansen's Fortran Language Server.
Usually here goes some kind of welcoming post... But nay!
Instead I'll just leave here a picture of my Sunday morning newspaper.
Morning post. Canvas, oil, emacs.