"Structure and Interpretation of Computer Programs", MIT's introductory CS course, taught in Scheme. I've taught sections of this three times within the Experimental Study Group.