in reply to Re: don't { use Perl }
in thread don't { use Perl }

Still, the only reason I write higher level computer languages is to communicate with a computer.

We write computer programs to control a machine through a sequence of states. We use higher level programming languages to do so because we can more readily and more reliably express and specify such sequences of states. We are the audience of our higher level programming languages.

Replies are listed 'Best First'.
Re: don't { use Perl }
by Abigail-II (Bishop) on Jun 10, 2002 at 17:45 UTC
    we can more readily and more reliably express and specify such sequences of states

    That's what I said upteem replies ago. We are the speakers. But the computer (by means of a compiler or interpreter) is the audience. It's not the main form of communication between people. If you don't believe, come to YAPC and visit some talks. You'll notice that the main language used by the speakers to communicate with the audience is English and not a computer language - Perl will only be used by the speakers to show the audience what to say to the computer.

    Abigail

      We are the speakers. But the computer (by means of a compiler or interpreter) is the audience.

      I humbly but strongly disagree. You are the audience of your own Perl or C code even while you write it. That is why you choose to to specify the sequence of states you ultimately intend in a language more akin to your own higher level concepts (or at least a highly restricted and rule bound subset of such higher level concepts). The machine is not the audience of your C code. 'gcc' is not the audience of your C code. You, and potentially other humans, are the audience as well as the speaker. As high level as C or Perl is compared to machine code, it is vastly low level compared to English. It is no surprise that we choose to limit our use of C or Perl to specifying particular state sequences and choose higher level languages such as English to communicate in general.

        If the target of the language is humans, how come when people ask for help with the language, they don't use Perl, but instead ask their questions in English? People looking at other peoples code are looking at it not as a target of the language, but as another potential speaker.

        BTW, How long do we continue in this thread before the guy in the armor comes up and hits us all over the head with a big fish?

        ()-()
         \"/
          `                                                     
        
Re: Re: Re: don't { use Perl }
by Jenda (Abbot) on Jun 11, 2002 at 15:30 UTC

    While at the lowest level we definitely need to "control a machine through a sequence of states", at the higher level we often use langauages that allow us to abstract out of any states. Think about Prolog, functional languages, SQL ... there we do not specify what states to go through. We merely specify some relations or properties of the results and leave the "conversion" to sequence of states/commands to someone else.

      Jenda