Computer Architecture
From Spivey's Corner
For several years, I gave a course on Computer Architecture based on the textbook of Hennessy and Patterson. The course had a practical component based on simulating the processor designs from the book using the functional programming language Gofer. These practicals have subsequently been adapted for Haskell by Geraint Jones.