It's better to do it the other way around; begin at the low level and work your way up to the abstractions:
* Foundations of proofwriting and mathematical thinking: Velleman
* Going further into logic: Hindley and Seldin, Lambda-Calculus and Combinators
* Apply what you learned just learned: Sussman and Abelson, SICP
* Getting serious: Awodey, Category theory
* You're there: Haskell