Books I think you should read

General CS stuff

PLT

Implementation of programming languages

Haskell

Math and quasi-math