Converting a Large Mathematical Software Package to C++20 Modules
By
vblanco
11mo ago· 2 min readenInsight
75/100
Toasty
Bagelometer↗
Right out the toaster. Reliable, with some real depth.
Score75TypeanalysisSentimentneutral
Summary
The article discusses the experience of converting a large mathematical software package written in C++ to C++20 modules, exploring the challenges, benefits, and practical implications of the conversion process.
Key quotes
· 3 pulledC++20 has introduced a 'module' system in which packages explicitly export declarations
With a non-trivial effort, the conversion to modules is possible, resulting in a reduction in compile time for the converted library
For downstream projects, compile times show no clear trend
Mathematical software has traditionally been built in the form of "packages" that build on each other. A substantial fraction of these packages is written in C++ and, as a consequence, the interface of a package is described in the form of header files th

