←back to thread

284 points borski | 2 comments | | HN request time: 0.525s | source
Show context
MontyCarloHall ◴[] No.44685710[source]
Isn't this just part of the broader trend of CS departments switching away from teaching computer science to teaching computer engineering, which in turn is part of the more general trend of colleges becoming more vocational?

LISP dialects like Scheme are excellent for teaching pure computer science because they are the closest thing to executing lambda calculus expressions. Whereas Python is excellent for teaching applied computer engineering, because it's essentially executable pseudocode for imperative languages, and imperative languages are the most common language a computer engineer encounters in the real world.

replies(18): >>44685819 #>>44685842 #>>44685939 #>>44686019 #>>44686088 #>>44686154 #>>44686222 #>>44686308 #>>44686321 #>>44686533 #>>44686596 #>>44686808 #>>44687195 #>>44687197 #>>44688209 #>>44688239 #>>44688473 #>>44688736 #
1. pk455 ◴[] No.44687197[source]
> most common language a computer engineer

Depends on your definition of a computer engineer. Dealing with strings in Python vs. dealing with character arrays in C is a world of a difference.

The decision to use Python feels like a solid compromise between giving the students a stair step to applied computer science work, while stripping away the cruft and language-specifics that would distract from implementing the more theoretical learning material

replies(1): >>44687469 #
2. Kwpolska ◴[] No.44687469[source]
Depends on which part of the theory you care about. Lists in Python are a magic structure that can grow and shrink at will. That's a bit too high level to be useful for learning the theory.