Ahh yes, back again with some more of that sweet lisp content. I'm sure by now you've guessed that I've been ankle deep in the parens again, and i've managed to pop my head up long enough to talk about it some more. And today I want to talk about one o
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 lossless 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
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
-
Improving mgcLisp's define syntax
-
Separating the Men from the Boys, Knuth Style
-
Reducing rotations during deletion from AVL trees
-
Parsing Lisp: From Data To Code
-
Swiz Heaps: A deterministic modification of Randomized Meldable Heaps
-
Let's talk Eval/Apply
-
BST Deletion: Removal By Merge
-
Dictionary Based Compression: The LZW Algorithm
-
Taking Action: Compiling Procedures to P-Code
-
Making Decisions: Compiling If Statements to P-Code