New

The latest blog posts to take off on Hacker News. 498 posts.

Software Engineering
2009
94

Clojure N00b Tips from Tim Bray

Clojure is the new hotness among people who think the JVM is an interesting platform for post-Java languages, and for people who think there’s still life in that ol’ Lisp beast, and for people who worry about concurrency and state in the context of the multicore future. Over the last few days I’ve been severely…

102

The Busy Beaver Problem

Busy Beaver puts another one on the Turing Machine's tape (image from the book The New Turing Omnibus). The busy beaver problem is a fun theoretical computer science problem. Intuitively, the problem is to find the smallest program that outputs as many data as possible and eventually halts. More formally it goes…

106

Tail Call Amputation

This is perhaps a slight digression; just an extended expression of pleasure about Clojure’s recur statement. It neatly squashes a bee I’ve had in my bonnet for some years now; if it’s wrong to loathe “tail recursion optimization” then I don’t want to be right.

107

Functional Geometry

Peter Henderson wrote an article about a method to describe pictures with functional programs. I've implemented it in Lisp. An updated version of the article uses curves and different shapes and has some references to other applications for this method, like "An Algebra of Music".

117

Pimping out git log

I got playing with git log and ended up creating this alias: [alias] lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative Which adds a git lg command that is a prettier version of git log --oneline.