Open-source software
Besides my own codes, I write and maintain open-source scientific software, mostly in modern Fortran. Everything is on GitHub, with tests and continuous integration.
My libraries
Small, tested libraries that came out of my simulation work. Several are modern rewrites of classic numerical packages.
- fitpackFortranModern Fortran translation of the FITPACK package for curve and surface fitting with splines.
- fortran-lapackFortranModern Fortran linear algebra library, the starting point of the stdlib linear algebra interface.
- wxMaterialDesignArtProviderC++Material Design and other modern icon sets for wxWidgets desktop programs.
- fortran-regexFortranRegular expressions in pure Fortran, a port of the tiny-regex-c library.
- fastmathFortranFast, approximate math functions for numerical kernels.
- fortran-fast-floatFortranFast parsing of floating-point numbers, a Fortran implementation of fast_float.
- fortran-besselsFortranBessel functions, a port of the Bessels.jl package.
- twopntFortranModern Fortran translation of the TWOPNT solver for boundary value problems, used in flame calculations.
- fortran-shlexFortranShell-like lexer, a port of Python's shlex.
- fortran-primesFortranA tiny library to evaluate and use prime numbers.
Fortran-lang
Fortran-lang is the community that builds the modern Fortran ecosystem: a package manager, a standard library and the tooling around them. I am one of its most active contributors.
Fortran Package Manager (fpm)
The build system and package manager of modern Fortran. More than 140 of my pull requests have been merged into it.
Fortran Standard Library (stdlib)
I wrote its modern linear algebra interface: solvers, decompositions and matrix functions on top of a precision-agnostic BLAS and LAPACK. Presented at FortranCon 2025.
Compilers in continuous integration
Contributions to setup-fortran, the GitHub action that installs Fortran compilers on Linux, macOS and Windows test machines.
Why this matters for your project
Open-source work is reviewed in public by other developers, on every compiler and operating system. The same habits go into the software I write for clients: version control, automated tests, continuous integration and documentation from the first day.