
This introductory text covers the key areas of computer science, including recursive function theory, formal languages, and automata. It assumes very little background in formal mathematics. The book is divided into five parts: Computability, Grammars and Automata, Logic, Complexity, and Unsolvability.
"The Art of Computer Programming" (http://www.amazon.com/s/ref=nb_sb_ss_i_6_31?url=search-alias...)
....to begin with.
Then there are theoretical computer science books.
I like the Computability, Complexity, and Languages, Second Edition: Fundamentals of Theoretical Computer Science (Computer Science and Scientific Computing)
http://www.amazon.com/Computability-Complexity-Languages-Sec...
If you want to see the repo, you can find it in https://github.com/ramadis/slang