[plt-scheme] Re: Programming for non-programmers
As everyone has probably noticed by now, there are
two radically different notions of programming at play:
Definition 1: systematically design and re-design (factor)
an application. Typically others use this software, and
also typically this software is maintained over some time.
But not always.
Definition 2: get the computer to do something for you,
anything almost (even if it is not quite right).
And 2 is the winning notion, even if it's wrong. Then
again even though it is wrong for all kinds of reasons,
it has a place.
As some of you have realized this is the heart of the problem.
GvR has advocated more of 2 with Python. We have focused
on 1 even if we could do 2 in high school, very successfully.
We (htdp) have considered option 2, and we will borrow from
option 2. But if that was our goal (get rich and famous with
a 2-style PL via a hugely successful college and high school
text) we would never have created DrScheme in the first place.
So as I considered this option again this week, I realized that
I'd consider myself a complete sell-out if I got everyone to
do 2 in Scheme. Thanks for helping me clarify what I want to do.
-- Matthias