I think that a pure programming course must be taught in Lisp since that is closest to the essence of computation with minimal syntactic overhead. once that is mastered, switching to an industrial language is just a matter of mapping a particular syntax to a subset of lisp concepts. The old MIT courses follow this approach and are on youtube.
mapping knowledge is a learning antipattern IMO. It gets you very far, a good primitive more-so, but you fundamentally struggle to learn new paradigms.