On Tuesday, May 12, 2015 at 11:09:01 AM UTC+5:30, Rustom Mody wrote: > The difference between C/Lisp (I club them together) and python is that > the former are more heroic. > > Like mountain climbing you can get a high, a thrill, even 'see God'¹ but > you can also break your back or worse. > > Python is by contrast like a walk in the park. If you find it interesting > (for reasons outside of python) you can get the job done. No epiphanies here
Just to be clear the "No epiphanies" is entirely positive. Around 2002 I started teaching python. Around the same time I started using an open editor rather than blackboard to teach. And for the most part python has been a trusted friend -- even if I dont know the code I will write beforehand and the bugs and the debugging and so on. [I remember one time getting completely screwed by regular expressions And more recently some confusion re dunder methods. but these are the exception to the rule that mostly python is quite reliable. ] The reason I am saying this (to OP): Which language you choose may not matter too much. But choose one you are sufficiently friendly with to start hacking with an open editor in front of the class Scheme?? I used scheme in the 80s -- ie before the age of projectable editor So while *in principle* it may seem as reliable as python In practice when I read racket today I find it far more forbidding than the PC scheme manuals I read in the 80s The other suggestion I would make: Use an interactive interpreter. Even if I were using C today, I'd find a C interpreter. And never mind that it messes up 10% of 'official' C semantics. You'll breeze through the remaining 90% at 3⨯ the rate And related to that (and one reason a pure functional language is good for pedagogy): NO PRINT statement It may seem trivial but beginning students have a real hard writing clean structured code. Tabooing prints helps get there faster And working in the interpreter makes a print-taboo a viable option -- https://mail.python.org/mailman/listinfo/python-list