Dancing links is a backtracking algorithm, just a nice way to optimize the backtracking.
Also, I should explicitly say thanks for sharing! It is fun reading solutions to this puzzle. Also fun to read Erlang.