Category Archives: Programming

Resolving Git Merge Conflicts with Ediff

Leonardo Etcheverry has an excellent short post on how to resolve merge conflicts with Magit and ediff. For various reasons, I don’t often encounter merge conflicts so I always struggle with getting them resolved. Etcheverry’s post shows how easy this … Continue reading

Posted in Programming | Tagged , | 2 Comments

Git Bisect Tutorial

Back in December, I wrote about Randy Fay’s screencast on Git bisect. Now Matt Honeycutt has posted his own tutorial. It’s in the form of a blog post so if Fay’s video moved too quickly for you to follow, you … Continue reading

Posted in Programming | Tagged | Leave a comment

Nanopass Compilers

For the 2013 Clojure Conj, Andy Keep gave a great talk on nanopass compilers. The idea is that rather than having the normal 2, 3, or 4 passes in a compiler, you have several passes each of which does one … Continue reading

Posted in Programming | Tagged , | Leave a comment

Lisp Debugging with Slime

Rainer Joswig has a nice video up demonstrating how to debug Lisp with Slime. In a sense there’s nothing new here: most Slime users are pretty much aware of the facilities that he uses. Nevertheless, it’s very useful to see … Continue reading

Posted in Programming | Tagged , , | Leave a comment

A Lisp Overview

A few days ago I wrote about Simon Tatham’s overview of C. Today, I want to mention a very nice overview of Lisp. The overview is really a Lisp primer aimed at C/C++/Java programmers (it’s notes from the CSC330 course … Continue reading

Posted in Programming | Tagged , | Leave a comment

Less Familiar Lisp Functions

A couple of months ago, I wrote about Christopher Neufeld’s series on the less familiar parts of Common Lisp. He’s up to the Fs now so if you’re interested in Lisp, you should check in with his latest posts. One … Continue reading

Posted in Programming | Tagged , | Leave a comment

SBCL 1.1.15 Released

Steel-Bank Common Lisp 1.1.15 just got released. As usual, it built and installed without incident on both my Macs. This release brings a new register allocation algorithm, some optimizations that increase the speed of make-array under certain circumstances, some enhancements, … Continue reading

Posted in Programming | Tagged , , | Leave a comment

An Overview of C

I spent so many years writing C code that I still tend to “think” in C when considering an algorithm. That’s true even when, as is mostly the case now, I’m going to write the algorithm in Lisp. A lot … Continue reading

Posted in Programming | Tagged | Leave a comment

An Empty Do

Back when I was first learning Lisp by reading Paul Graham’s Ansi Common Lisp, Graham mentioned that sometimes you can do useful work with a DO loop having an empty body. I thought that was pretty neat but I’ve never … Continue reading

Posted in Programming | Tagged , | 1 Comment

Emacs Byte Code

Over at null program, Christopher Wellons has an excellent post on Emacs Byte Code Internals. Most people won’t care, of course, but we’re nerds and we don’t like black boxes. As Wellons says, the byte code internals are under documented—or … Continue reading

Posted in Programming | Tagged , | Leave a comment