Cracker Barrel Peg Board Puzzle in Haskell

:: haskell, programming

I first wrote a program to solve the Cracker Barrel peg board puzzle (15 holes arranged in a triangle with 14 golf tees) many years ago as youth using the BASIC language. I wish I still had the source to that, because I’m pretty sure this Haskell version would kick its butt :)

:: functional programming, programming

I first became interested in functional programming when I was exposed to Python, Ruby & JavaScript a number of years ago. Since then I’ve looked into Arc, Clojure, Common Lisp, Haskell, Logo, ML & Scheme. I haven’t yet determined whether I’ll be more productive in any of them than I am with Ruby for developing web applications, but I do find them quite interesting.

2009 Programming Language Plan

:: programming, racket, clojure, common lisp, haskell, lisp, logo, ruby, scheme, sml

Update 11/23/2020: The ultimate winner for my primary programming language was Racket.


The 2008 Programming Language Plan didn’t go as well as I hoped, so I’m regrouping for another go at it. I did make progress learning some Logo and teaching it to my daughters, and I worked through seven chapters of “Programming in Haskell” which was very enjoyable, but I also spent way too much time trying to decide which language(s) to learn without actually learning them.

Ubuntu Linux 8.04 – Wake on LAN

:: linux, network, ruby, sysadmin, utility

Now that I’ve switched to a Macbook Pro with OSX Leopard as my primary desktop, I’ve located my Ubuntu machine in another part of the house to be accessible to my children. Not wanting to walk to the room where it’s located just to flip the power switch, I researched how to get “wake on LAN” working, so I could power it up remotely.

Nice Fonts for GNU Emacs on Ubuntu Linux

:: emacs, linux, lisp

UPDATE 12/24/08: This article is now out of date. I just installed Ubuntu 8.10, and getting Emacs with nice fonts is now much easier:

  1. Install the emacs-snapshot-gtk package
  2. Edit ~/.Xresources to have Emacs.font: Bitstream Vera Sans Mono–10
  3. xrdb -merge ~/.Xresources