in reply to Perl High School

Actually, a language which resembles English more than, say, Java or C is more intuitive - Perl only starts to get confusing when you start expecting things from it based on experience.

And, in terms of functionality, Perl is more intuitive to people who don't have the same prejudices that veterens have. Dear God - can you imagine trying to deal with the fundamental nature of an orthagonal language when the students don't understand why you can't just DO it? To a newbie, there aren't layers to a computer - why can't I just make a window? Or clear the screen? I'm programming the computer, why can't I just tell it to do things that I know it can do? (this is one of the reasons VBasic is a strong contender where Win32 systems are the norm)

The principles of programming should be established before we explain the concept of problem domains, or building archetecture before getting to the problem. The advantage is that Perl will be a usable skill to them if they pursue programmin - as opposed to a teaching language, which you never use again. Additionally, they can go out and write CGI scripts - the only kind of application that a newbie can write and have something productive occur.

Cheers,
Erik

Replies are listed 'Best First'.
Re: Perl High School
by astaines (Curate) on Feb 24, 2002 at 18:47 UTC

    For students starting to learn rapid positive feedback is very helpful. This is why Logo and StarLogo are such good langauges for young (elementary school) children. Perl is a good choice because you don't have to set up all that much to get something useful out of it. Kudos to hsweet for thinking of it and having the courage to run with it.

    Java is probably a really bad choice for kids, because even very trivial Java programs need a lot of stuff set up. Fortran and C are intermediate on this measure. Note that this is not a criticism of Java as a development language for computer professionals.

    There are a few other instant feedback languages. Forth and APL are both cute, but probably too hard. Mind you, Forth is probably a good introduction to computer internals. In some respects it's a readable assembler! Basic is also a good choice, although GW-basic was better for this than Visual Basic. The problem with Basic is that it's too hard to take it further. Good programming practice in Basic is not very extensible, whereas good programming practice in Perl will carry kids a very long way.

    There's at least some case to be made for exposing kids to several languages. This shows them that there is really more than one way to do it. Balancing education against total confusion I leave to more skilled teachers than I.

    -- Anthony Staines

    P.S. I learnt to program using MS-Basic on Dos 2.1, Dbase II on CP/M and PL-1 on IBM mainframes in that order :->
    I don't necessarily recommend this, but it might make a fun poll.