Once I have been offered a snake puzzle. It's made of 64 cubes of wood, some of them can turn. The goal is to fold this snake into a 4x4x4 cube.
After a while trying to solve this cube I decided to write a solver in Prolog. I present here an Haskell version of this solver.
So here is my own version...