Today my mind has been somewhat muddled from studying for the finals that are converging on me, and I was thinking relatively randomly; at one point, while I was rolling the geek code translation for P++++, "I don't write Perl, I speak it", I happened to think about my French final simultaneously in some other part of my brain, and somehow the two thoughts ran into each other ...

... which led to my wondering whether Perl, or any other programming language for that matter, could actually be taught as a foreign language, with all the aspects of a standard foreign language class. Any takers? ;-)

  • Comment on A somewhat whimsical meditation on teaching Perl

Replies are listed 'Best First'.
Re: A somewhat whimsical meditation on teaching Perl
by japhy (Canon) on Apr 17, 2001 at 07:30 UTC

      Hey japhy, what is your intended audience for this work in progress? It's got the right voicing and approach for complete newcomers to programming (and computing?) in general, but I note that some of your vocabulary swings a bit more into territory that expects some knowledge (for example, you mention running your sample 'hello world' program by typing such-and-such, but you never introduced them to the concept of a command prompt.).

      Just curious as I am contemplating teaching someone to program who has probably never done more than use a graphical interface, and probably isn't familiar with much more than MS Word and her web browser.

        I don't know. I've not touched that in several months, since I started working on my real book.

        _____________________________________________________
        Jeff[japhy]Pinyan: Perl, regex, and perl hacker.
        s++=END;++y(;-P)}y js++=;shajsj<++y(p-q)}?print:??;

Re: A somewhat whimsical meditation on teaching Perl
by idnopheq (Chaplain) on Apr 17, 2001 at 07:14 UTC
    Impressed by the thought.
    Frightened by the answer.

    Afraid to comment further.

    HTH
    --
    idnopheq
    Apply yourself to new problems without preparation, develop confidence in your ability to to meet situations as they arrise.

Perl isn't a natural language, though...
by dragonchild (Archbishop) on Sep 04, 2001 at 18:45 UTC
    The thing is, programming languages aren't natural languages. With a natural language, there is an assumption of knowledge and comprehension in the listener. With a programming language, there is no such assumption. That's why programming languages are so structured.

    To give a very simplistic example, English is a SVO language - the standard sentence is SVO, or Subject-Verb-Object. "The cat sits on the rug." Other languages, however, are different. German is SOV, as are many Latin texts.

    This may be my small, caffeine-deprived brain speaking, but I cannot imagine any computer that is able to understand English being able to understand "Strong in the Force he is". (Yoda spoke in OSV.) Or, "He strong in the force is", which is SOV. Humans do it by associating a ridiculously huge amount of contextual information with every single word. (As a tangential subject, this is why the conditional in logic has many issues.)

    In addition, computer languages need to be more precise than natural languages, primarily because we can tolerate a little more uncertainty than your average silicon-based lifeform. Can you imagine writing a program for a bank that says "While that amount over there is less than 7ish, get your job done." Yet, humans handle this kind of uncertainty quite nicely all the time.

    Sorry bout the rambling ... Labor Day, while neat, sucks on Tuesday.

    ------
    We are the carpenters and bricklayers of the Information Age.

    Vote paco for President!