4 ms·
When it's not a code word for that it's often a code word for something bad. Not always, but often. People defending what's right can say one should do it bec
by pg 18y ago
When it's not a code word for that it's often a code word for something bad. Not always, but often.
People defending what's right can say one should do it because it's right. But people defending something they know is basically wrong can't say one should do it because it's wrong. So they look around for another word, and "practical" is usually the first they find.
- tlb 18y agoIn this particular case of Gerry Sussman choosing Python over Scheme, I don't think he's using "practical" to mean "I know it's wrong, but I'm comfortable with Java so Python seems more familiar". I think "practical" often means choosing your battles. Sussman's choosing to fight the battle of explaining some syntax to his students rather than the battle of implementing a real-time robot control library from scratch in a language where no implementation supports real-time very well. Sun-Tzu would approve.
- dhess 18y agoI was fortunate enough to attend this ILC session last night. Some people here are reading way too much into what Gerry Sussman said. I don't think Lispers should castigate Gerry for MIT's decision to use Python in its new introductory EECS curriculum, nor should Pythonistas praise him for giving in to "practical" concerns. It's not evident from Andy Wingo's blog post, but just to clarify, Gerry didn't choose Python over Scheme: a committee did. Gerry said that when they had their revelation about the state of computer programming in 1997, he and Hal Abelson decided to stop teaching 6.001, and they eventually stepped away from the course altogether. (I believe Gerry returned to teach the class for the final term it was offered, but he didn't get into that last night; I could be wrong.) Gerry went on to say that 6.001 essentially languished until sometime around 2007, when a committee got together and redesigned the introductory EECS curriculum to be what is now 6.0[012]. He didn't say whether he was on that committee, but I got the impression he was not. He appeared to be speculating when he offered the reason why Python was chosen. It was an offhand remark, something to the effect of (and I'm paraphrasing here), "And why Python? I suppose there were already good libraries for controlling these robots." It sounded like Gerry explicitly chose not to fight any battles at all on this issue, and simply walked away resigned to the fact that computer programming, and engineering in general, are much different now than they were when he, Hal and Julie wrote SICP. Two more things: * I don't recall Gerry using the word "practical" even once while reciting his short anecdote. * Gerry continues to teach with Scheme, not Python, in 6.945, his advanced topics course.
- sayrer 18y agoIt sounds like a healthy attitude. It's not like Scheme and Python are radically different languages.
- pg 18y agoYeah, sure, I'm not saying it is in this case. Just that it's one of those words to watch for.
- smallpaul 18y agoWe're talking about the user interface to computational machines. There is no abstract "right" or "wrong" and no context-insensitive "practical" or "impractical." He wanted to do a course about robots, and according to him, the interface to the robots was Python, which was otherwise an adequate language. If you want to make a case to the contrary, it should be rooted in the specifics of the situation.