[plt-scheme] HtDP in Python!

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Mon Feb 16 15:42:07 EST 2009

On Feb 16, 2009, at 3:19 PM, Arthur Nunes-Harwit wrote:

>   I believe that HtDP can be used with any language that supports  
> functional programming.  (Of course, there may not be support for  
> the groovy web and graphics examples.)

As Shriram said, we have a successful transition to Java -- using the  
design recipe. Of course, because you have different means of  
abstractions in OOPLs than FPLs, HtDC needs additional chapters on  
creating and using abstractions. Furthermore, if you drive this  
thought to the end, you quickly realize how OOP design ends up  
looking functional. See abstraction of traversals in OOP, last  
chapter in HtDC.

>   I can't yet say.  I am planning a course using Python.  That  
> wasn't my first choice.  The curriculum committee was suggesting  
> Scheme or Haskell. Most of the sub-committee members voted against  
> both of those.

It is nonsense to evaluate a first course in terms of the language  
that is used. HtDP is as much about Scheme as Python is about  
basketweaving. The question is whether you teach notational mechanics  
in the first course or whether you teach design.

 From a purely egotistical pov, I welcome your decision of course. It  
means that you're putting your students at a great disadvantage in  
the first semester/year, and they may never catch up. Being at  
neighboring schools and competing for the same scarce slots in the  
Boston area, my students will have a unique advantage in four years  
from now.

Please forward my thank-you to your colleagues. -- Matthias

P.S. I gave a talk comparing the situation at NEU when I arrived here  
(and you know it) with the one that we have now wrt to our  
curriculum. Back then it was all-Java-all-first-year-and-no- 
programming jobs after five. Now it's the opposite.

"Wir sind froh, dass die Absolventen schon Java können. Programmieren  
müssen wir denen halt noch beibringen."

overheard in a German firm, via Mike Sperber

Posted on the users mailing list.