Actually, it looks to me that the course of study offered to you is quite good. A good Computer Sciences curriculum will teach you the concepts necessary to be an excellent critical thinker and problem solver. After you are solid with the fundamentals, you will realize that learning a new programming language is nothing more than memorizing syntax and library functions. To tell you the truth, after learning the more advanced concepts in the upper level courses, picking up a programming language will be quite easy and even mundane. You will be glad your curriculum didn't waste valuable classroom time "just learning a language," and this is why (at least from my experience), if a CS course offered by a reputable CS department requires that you know, say, straight C as a prerequisite, the department will not spend time teaching it to you, but rather expect that you, as a consummate Computer Scientist, will go and learn the language on your own, and that you should be able to do that well.