As much as you may want it to be, this book is not very good.
There is a whole chapter on patching. This is trivial in BASIC, but the examples are so contrived it's ridiculous. The argument is that you may not be able to rewrite or reload the program. But the scenarios presented are, laughably, less than 50 lines long.
One example uses a floating point number X.Y to represent two ASCII characters (!). This is "patched" to deal with two special cases by just hard coding a string in the code. But then it's revealed there are only 15 cases in total. You might as well hard code the strings anyway since the data set is so small, thus avoiding the bizarre numerical representation of characters.
@GeoffWozniak > One example uses a floating point number X.Y to represent two ASCII characters (!).
Cairo's *build system* does this - it picks some specific absurd floating point number carefully constructed to determine endianness of floats.... and it does so by running strings to see how the float got represented
it makes me scratch my head