
Steve Klabnik wrote:
Unfortunately, at my university, we don't do much in the way of functional programming. At all. So I've been trying to work on it outside of class as much as possible. I'm going through the exercises in SICP. I've picked up "The Haskell School of Expression," as well as " Basic Category Theory for Computer Scientists." (which I'm finding is not very basic, at least for someone as new to the topic as I am)
I'd also recommend Richard Bird. Introduction to Functional Programming in Haskell.
But what else can I do? While my fall classes are scheduled, my spring classes must consist of 15 credits of anything I want to take. Should I take some math courses? Which ones? Anything related that I should study?
While not directly related, taking math courses improves your Haskell skills automatically :) Discrete mathematics is the umbrella term for the math you want, which includes things like graph theory, combinatorics and logic. Intuitionistic logic and type theory are directly related to Haskell.
The best way to improve coding ability is to actually code.
Try some problems at http://projecteuler.net/ Regards, apfelmus