>>70801043NTA but its good and will teach you to be a good programmer but it does it with scheme, a dialect of lisp. Just take the good functional programming concepts and apply it to real languages. Don't fall for the lisp meme and don't fall down the metacircular evaluator hole and try to make your own lisp but better. I wouldn't recommend it if its your literal first book on computer science though.