Kolmafia code is over a decade old and maintained by volunteers with various levels of expertise. There are a number of things that would be done differently if there was a clean slate reboot that are not worth doing otherwise. To mention a few, if I had a project to create KoLmafia 2.0 from scratch, I probably would not host it at SourceForge and not use SVN as my version control system. I would use a build system, such as Maven, that managed external compile and run dependencies better. I would not invent a scripting language but would focus on support for some other language, for example, JavaScript. I might even consider a plugin API instead of a scripting API. I would ask whether script distribution and update really needs to be a KoLmafia feature, and so on. But none of these are easy if there is also a requirement to keep KoLmafia working and the degree to which they are necessary is a matter of opinion, tempered by costs and benefits.
It is reasonable to extrapolate from package managers but they are by no means the only modern solution to versioning, distribution and dependency issues.
It is reasonable to extrapolate from package managers but they are by no means the only modern solution to versioning, distribution and dependency issues.
Last edited: