Calibrating a format that has no specification

Kerf writes Hundegger BVX. There is no public spec for it, so we built one out of real production files.
All updates

Kerf turns a carpenter's cutting list into a file a beam saw will execute. Two of the formats it writes are documented. One is not.

BVX has no public specification. You cannot read it and implement it. What you can do is gather real files that real machines already accepted, and work backwards until yours look the same.

That is what we did. Twelve production files, 879 parts, roughly nine thousand one hundred operations. Every release is checked against that corpus before it goes out, and a change that moves a single byte in a way the corpus does not recognise fails the build.

It is a slow way to support a format. It is also the only honest one, because the test of a machine file is not whether it parses. It is whether the beam comes off the saw the shape it was drawn.

Start here

Want the longer
version of any of this?

We are happy to go into detail. That is usually the interesting part.