Martin Becker — 20 minutes 🐪
Add a database to a math module to make it faster. But know what type of database to use and where to put it.
Some math applications can benefit from copious amounts of precomputed data. Naïvely copying such data into local constants would result in monstrously large modules, however. Databases offer a persistence layer with a much smaller memory footprint.
Still, there are a couple of trade-offs to be taken into account. And there is the question of where to place non-code files so that they can reliably be located at run-time. The talk will discuss these considerations using examples of Perl5 computer algebra modules like Math::GaloisField.
Don't worry if you never heard about Galois fields. The talk will focus on deployment and performance aspects.
It is an enhanced version of a talk presented at German Perl Workshop 2019 in Munich.