When it comes to algorithms for removing an entry from a binary search tree there are two general strategies you take: removal by copying and removal by merge. Deletion by copying - sometimes referred to as "hibbard deletion" - is by far the more commo

The LZ family of loss compression algorithms has many, many variants each making use of various optimizations to eek out every bit of performance for a given application. There are so many variants that they are generally broken into two categories: LZ

Having previously covered conditional statements and loops, there is only one topic left to cover in my series on compiling control flow constructs to pcode, and of course I have saved the best for last. In todays post we're going to talk about compili

When we last left off, I had covered compiling while statements, which involved branching, conditional branching and labels, as well as the basic technique of backpatching. In todays post we're going to kick our backpatch-fu up a level by using it in c

In my previous post on code generation we got our feet wet with compiling some basic expressions to p-code. In todays post I'm going to pick up where we left off and jump right in with control statements. In particular,