[plt-scheme] Scheme contradictions

From: Glenn Ambrose (glennambrose at hotmail.com)
Date: Wed May 3 10:22:48 EDT 2006

The Schematics website has been mentioned a few times and I certainly agree 
that this could be a great unifying force.

About the Schematics site, does it run off the PLT-server, use servlets, 
connect to a database with SchemeQL? If it does this could the basis of a 
website blue-print. I saw a report by Ben Simon called 'the Scheme Pet 
Store'. The same Idea but kept entirely within PLT-Scheme (is there any 
reason to leave it?) would be a great learning aid.

You could go to the Schematics website and download 2 folders, one for 
static files and the other dynamic of a striped down version of the 
Schematic website. The documentation would explain how to set up the folders 
on your home machine with your trusty DrScheme installed already, what 
database to get, how and where to put it. Finally how to get the server 
talking to the database. Now the inquiring souls have a working website on 
their home machines that they can explore, break, fix and basically tinker 
under the hood with. Now any further documentation, hacks, can take place in 
context of a working environment. The learning can take place within 
personal space where the learner can mold the original Schematics site into 
a site that expresses the learners wants.

I also want to explain that I am not knocking HtDP and I believe I see where 
the authors are coming from. They are teaching a design process and teaching 
computer science. Great it that is your goal. If on the other hand your 
immediate goal is not computer science but to achieve some other objective 
then any thing HtDP becomes a frustration. Later this wouldn't be the case 
for then it would be a source of ideas.

As for reasons why people wouldn't take up Scheme because of the 
unfamiliarity of it all. Maybe that is part of the reason but I think it is 
also that Scheme is very tied up with pedagogy. When looking at other 
languages, there is instructional material that takes you down the computer 
science path but there is also instructional material that focuses on other 
interests and is tailored specifically for that. If you are learning for a 
specific reason then you will be inclined to favour any language will 
specifically meet that need.

Computer programming shouldn't just be for people who wont to know the whole 
process but for people who just wont to get a job done. You don't expect a 
carpenter to learn all about metallurgy if all he wants to do is sharpen a 

Posted on the users mailing list.