Yes, mathematics. After studying computer science problems for a while I fell in love with math.
But beware, you won't be able to function anymore in a JAVA OOP store :P
And still, I find that most of the abstractions that appear, say, in Haskell have little mathematical content. Even less so their imitation in Javascript. ¯\_(ツ)_/¯