Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: Re: Re: Re: don't { use Perl }

by ignatz (Vicar)
on Jun 10, 2002 at 15:59 UTC ( [id://173206]=note: print w/replies, xml ) Need Help??


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

It seems to me that theories of the spoken word have little value in the arena of programming languages. Language theory assumes that the speaker and the listener are on the same level: they both speak the same language. Programming languages are advanced constructs translated into the language of a very fast, restricted yet capable idiot.
()-()
 \"/
  `                                                     

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: don't { use Perl }
by Anonymous Monk on Jun 10, 2002 at 16:26 UTC
    Not at all. Just because my program is translated into a machine language to run does not mean the machine is the only listener, nor even the primary listener, nor even a listener at all in any reasonable application of the word. The listeners of programming languages are humans. To think otherwise is to fail to understand why we would bother to create higher languages above the machine level in the first place.
      The speakers of high level programming languages are humans. But they still have to follow lots of silly rules - because otherwise they aren't understood. Not by their fellow humans, but by machines.

      Abigail

        Higher level programming languages make it easier for humans to write programs, reason about programs, and to communicate with each other about programming. Higher level languages do not do one wit for the machine, which doesn't "understand" the program in the first place. Of course higher level languages are very highly constrained and rule bound, so is the language of mathematics. Nevertheless, both the speakers and the listeners of high level programming languages are humans. Computers aren't necessary in the equation.
      We are incapable of speaking in the native language of computers to any usable degree. A programming language's purpose is to facilitate speaking to machines. When another programmer looks at it, he as looking at it as another speaker of the language, but not as its target. It is a one way language, since its purpose is entirely to manipulate machines. The fact that the relationship between speaker and listener, where each truly does not understand the language of the other, makes spoken language theory useless.
      ()-()
       \"/
        `                                                     
      
        When another programmer looks at it, he as looking at it as another speaker of the language, but not as its target.

        Oh please. Have you never debugged your own or another's code? Have you ever stepped through the code, simulating the machine's behavior either mentally or on paper? Of course you have, at the level of the higher level code (not at the level of the machine language I would expect). How else could you write an algorithm in Perl without being able to mentally simulate how the code gets executed? How is that not both speaker and audience of the high level code? You can only be a meaningful speaker of a language that you are also capable of being a meaningful listener of.

        A programming language's purpose is to facilitate speaking to machines.

        A programming language's purpose is not to "facilitate speaking to machines" as you state. I can speak to machines much easier in English, and often do even if some the words I speak may not be found in most English dictionaries :-P The purpose of a programming language is to facilitate writing instructions that control a machine, the machine is never a "listener" in any sensible application of the word. Why do we construct higher level programming languages? So that we can express those instructions in higher level terms and expressions that make more sense to *us*. We are the audience.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://173206]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others pondering the Monastery: (3)
As of 2024-04-26 07:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found