Is there a good textbook for writing an interpreter in an imperative language? Can anyone recommend a good textbook for writing interpreters (not compilers) that don't use languages like Scheme or Haskell?
For the "intermediate code" version of an interpreter there is no finer example in a small book than On Pascal Compilers by Per Branch Hansen. You need to be able (or a least willing) to read Pascal of course. 

This book is a rare instance of CS Literature. Hansen is one of the masters. 

The way the code in the book is developed you actually see the difference between compiling and interpreting as he does "code generation" to an intermediate language and then provides a separate interpreter for that language. So you see what you need to do to get to the point at which interpretation is efficient and then see how the interpreter part actually works. 



The book is out of print. Check around for a used copy. Amazon currently has it a bit cheaper than Abe Books. If you have a good University Library nearby they may have it. You might also be able to get a copy from interlibrary loan that is supported by most libraries.