Using ASCII waveforms to test real-time audio code
Software development best-practices dictate that if you want your software to be high-quality, you test your code, you test it automatically, and you test it often. Q2Q, of course, has test suites to prevent regressions, and a CI system that makes sure all tests pass. Then how would you test looping functionality? Or mixing different sounds together? Or crossfading? Trying to come up with how to test those invariants is very hard. The F# compiler has some tests that test the new compiler's output against output from an earlier known-good version of itself. Every time I work on a new feature, I manually create some test cases for the new feature. I would run this in F# interactive, so that if it looks good, I can copy-paste the result right back into the test code as the baseline to compare against from now on. This is telling us that a test is failing because the system's output did not match the expected ASCII waveform baseline.