Sherry Turkle's new book "Alone Together" raises an important point that is 
missing from this discussion.  Programming languages can't saying anything 
*important* from a human perspective.  I enjoyed the review of "Alone Together" 
at 
http://bnreview.barnesandnoble.com/t5/Public-and-Private/Alone-Together/ba-p/4221
  The most important things that humans can say to one another are: "I'm sorry. 
Thank you. I forgive you. I love you."  None of those can be stated in any 
programming language, because programming languages are about specifying 
action, not reflecting the shared human condition, and that's the most 
important activity for any human language.  Alex's suggestion that we can layer 
a model and lexicon on top of a programming language is addressing the critical 
questions of AI: *CAN* we describe the human condition via the limited 
mechanisms of a computer?  It's a great question, but raising it is not the 
same as saying that programming languages are in any way equivalent to human 
languages.  Take any powerful, meaningful phrase in any human language, from 
"Veni, vidi, vici" to "I have a dream" -- none of them can be said with the 
same nuance, the same elegance, and the same meaning in any programming 
language.

Computer programming languages are not languages in any way that is important 
or meaningful.

Mark

-----Original Message-----
From: Richard O'Keefe [mailto:o...@cs.otago.ac.nz] 
Sent: Thursday, February 17, 2011 7:28 PM
To: alex
Cc: Ppig-Discuss-List
Subject: Re: Computers are systems not languages

It does sound as though there's a category confusion there.

There's clearly a range of things that have a strong family
resemblance.  We have
        Spoken human languages.   Signed human languages.
        Written human languages.
        Invented human languages like Esperanto and lojban.
        Written notations like knitting patterns.
        Symbolic drawn notations like music.
        Topologically faithful drawn notations like
        wiring and plumbing diagrams,
Algorithms can be expressed in most of these:
you can recite Euclid's algorithm by voice, you can
write it down in Greek, you can use Dijkstra's notation,
or you can use a visual programming language.
If your programming language is a stylised subset of
English like Cobol or AppleScript or some data base
query languages -- wasn't there one called Natural? --
does that make it "language"?  And if you translate it
to a flowchart, does that make it "not language"?

Back before the Loglan/lojban split, Loglan was designed
to be easy to parse by computer.  Does that make it NOT
a human language?  But people do write it and speak it
to do pretty much everything people do with English.

Programming languages are extremely limited compared
with natural languages.  But then, using a Bliss board
provides you with a very limited communication
channel, even though Blissymbolics was originally
invented to be a universal written language.  Does that
mean that someone conveying their needs by pointing to
symbols on a Bliss board is using language, or not?



On 18/02/2011, at 3:55 AM, alex wrote:
> 
> Ian Bogost starts off by arguing that learning a programming language
> shouldn't meet a curricular requirement for learning a natural
> language.  That's fair enough.

It's fair enough not because of what a programming language
*is* (or isn't) but what it can (or can't) *do*, and that
is to exchange ordinary human thoughts with other people.

>  "the ability to translate natural languages doesn't really translate
> (as it were) to computer languages"
> 
> It clearly does.

I would have said that it clearly doesn't.
You *can* translate
        Yesterday Sue hoped that Bill's surviving the crash
        would not mean her exposure as the criminal who had
        repeatedly taken the school apples, but I fear that
        she will be disappointed at tomorrow's meeting.
into other human languages, even Esperanto or Klingon (if
Klingon has a word for 'apple' or 'fear' (:-)).  But you
can't translate it into Haskell or Ada.  Note that it's not
just references to the body and its environment, there's
tense/mood/aspect as well.

You *can* translate a sentence like that into a mathematically
defined logical form which can be represented inside a computer
and to some extent manipulated by a computer.  But I do not see
how the result can be usefully called a 'program'.

I think it may be more useful to ask "in what ways are
programming notations like, and in what ways unlike,
natural languages".

Are identifiers in programs more like nouns or pronouns,
for example?


-- 
The Open University is incorporated by Royal Charter (RC 000391), an exempt 
charity in England & Wales and a charity registered in Scotland (SC 038302).


Reply via email to