While you are correct, the comment is about students. If you don't learn to program without a garbage collector, you haven't really learned to program. I'd go further and insist that you need a good foundation in an assembly language. MIX is good enough, you don't need anything fancy. You just need to learn how things work at the basic level.
I'd also say that you need to learn a range of languages (not well, be adequately). I'd include Fortran, Lisp, Forth as the basic level. Then C for a more advanced level. (Perhaps you *could* do everything in C in Fortran95 instead, but why?)
Finally, at an advanced level, I'd introduce Java, Erlang, Smalltalk, and, Haskell or OCaML. If you want another language after that, Either Ada95 or modern x64 assembler.
And I'd do the whole thing in one year, which means none of the languages are covered in depth. Then pick any one of them, Java if you prefer, for more comprehensive study of algorithms. But *start* with a simplified assembler.
N.B.: There could be a parallel track that was followed based around HTML, Javascript, TCP servers, etc. I don't understand enough about it, because I never studied it, so I only ended up knowning pieces here and there that I picked up for project. I envision these classes intertwined like the Math and Physics classes that I took in college. E.g, the TCP lessons would be needed when the Java(or whatever) classes started to address multiprocessing on multiple computers.