[lbo-talk] Speaking of intelligence....

Tayssir John Gabbour tayssir.john at googlemail.com
Sun Nov 25 07:25:36 PST 2007


On Nov 24, 2007 11:17 PM, ravi <ravi at platosbeard.org> wrote:
> All true, but that is the nature of any significant work on a
> computer, isn't it? After all, the syntax of a programming language is
> (IMO) a negligible burden on the way to producing meaningful code.

I think it often helps to forget that we're talking about "programming languages," as there's a lot of mystification surrounding them. More simply, they're interfaces into the computer, which allow us to tell the computer what to do.

Programs which help us write programs.

We can immediately see that there are better and worse programs. Some let us think the way we want and offer helpful features; while others impose distractions which have little to do with what we're trying to describe. We prefer to describe games and accounting systems, not what's supposed to go in memory location X.

Why aren't we using machine language and Cobol, if we can help it? Because languages greatly differ in expressive power. The thoughts you can conveniently express without fighting the language.

What features might you want?

* Incrementally building your program. Why can't you modify a

running program, and immediately see the changes you made? Maybe

this implies a style where you create a minimal program that

does almost nothing, and build upon it while it's running. A

helpful prompt could let you ask questions and interact with

the program.

* Save and reload your running program "image" like a computer

game.

* Being able to extend the language itself. In English, we create

new idioms all the time. But in languages like C and Python, you

have to wait for central language designers to supply some

trivial new "for loop." The problem is, the central language

designer is probably no expert on your domain. So you need to

cleanly be able to add new extensions to the language, in a way

which doesn't step on other peoples' toes.

* The computer can do menial labor, so the human is liberated to

do what she wants. Like garbage collection.

Among other features. Paul Graham is a notable exponent of such ideas: http://lib.store.yahoo.net/lib/paulgraham/bbnexcerpts.txt http://www.paulgraham.com/avg.html

And Alan Kay, developer of Smalltalk and (I believe) heavily involved with One Laptop Per Child, claimed that "the computer revolution hasn't happened yet." http://video.google.com/videoplay?docid=-2950949730059754521

Tayssir



More information about the lbo-talk mailing list