This library defines an Interpreter monad, inside which modules can be loaded, and strings with Haskell expressions can be evaluated, coerced into values, or type-checked. The library is thread-safe and all operations (even the coertion of expressions to values) are type-safe. It is, esentially, a huge subset of the GHC API wrapped in a simpler API. Tested with GHC 6.6.1.