Starting in on this again, trying to develop some code/concepts which can be used for everything — if this doesn’t work out, I guess I’ll have to bail on OpenSCAD, METAPOST, Toolpath Language, &c., and try FreeCAD.
One consideration for the METAPOST file is that it doesn’t take endmill diameter into account — I’ve tried doing that in OpenSCAD, and it tends to result in a complex file which is slow to calculate unfortunately.
Ideally one would load the tooling information from somewhere, as opposed to hard-coding it in a file — while the CSV files used by Carbide Create are quite convenient, they are different from the JSON files already being loaded, so will need additional code to load and parse.