I'm surprised that people have managed to get through a CS program without learning C (or, at least, C++)! It seems to me that programming should be taught simultaneously in Haskell (or Lisp?) and C.
- C teaches you how computers work.
- Haskell teaches you how programming logic works.
- C teaches you how computers work.
- Haskell teaches you how programming logic works.