HELP! Must choose language!

Nick Vargish nav at adams.patriot.net
Mon Dec 30 13:00:57 EST 2002


Martin Christensen <knightsofspamalot-factotum at gvdnet.dk> writes:

> I don't agree with you. In essence you're suggestion that he start
> learning _languages_, but what he really needs, especially considering
> that he's a 9th grader, is to learn _programming_ as a mental
> discipline and technique.

Maybe I was drawing too strongly on my own background; when I was in
high school we were taught Pascal, because that was considered to be a
good language for teaching the "mental discipline" and "techniques" of
the day. I was already writing games for my Fujitsu Micro-8 and
sharing them with a large audience, so Pascal was a cakewalk... But a
lot of my classmates really struggled with it, as you did with C++.

I'm just not convinced that _any_ programming language can really
teach the discipline of solving the problem before a line of code is
written. Maybe a class in geometry (proofs) would be a good start.

For someone who's never written a program before, _any_ language is
going to be confusing -- even Python has a number of syntactic
"tricks" that have to be mastered, such as '()' for tuples, '[]' for
lists, and '{}' for dictionaries. Then the novice will want to know
why a tuple is distinct from a list...

In my opinion, Scheme is close to a language that teaches the basics
of algorithm design and problem solving with a minimal amount of
syntax. I find it quite lovely to work with, but most people think I'm
insane.

Nick

-- 
#include<stdio.h> /* SigMask 0.3 (sig.c) 19990429 PUBLIC DOMAIN "Compile Me" */
int main(c,v)char *v;{return !c?putchar(*v-1)&&main(0,v+ /* Tweaks welcomed. */
1):main(0,"Ojdl!Wbshjti!=obwAqbusjpu/ofu?\v\1");}  /* build: cc -o sig sig.c */




More information about the Python-list mailing list