Polymorphism and language
marcus at ira.uka.de
Sun Aug 30 10:04:16 UTC 1998
On Sat, Aug 29, 1998 at 06:19:00PM -0700, Alan Kay wrote:
> Thanks for the thanks. Actually, we need you and the rest of the list to
> help think about the following situation and to make an analogy to computer
> languages: a child learning a natural language starts a progression that
> can culminate in Shakespeare, Cervantes, Newton and Einstein. The biggest
> change is in the ideas that the child can deal with, and in the larger
> rhetorical structures in which they are expressed. From the standpoint of
> the language itself, it is the vocabulary that most enlarges with the new
> concepts, but the syntax only grows a little (and none of the old is
The Perl Philosophy is somewhat like that...
>From the Camel Book ("Programming Perl", by Larry Wall, Tom Christiansen &
Randal L. Schwartz) p.2.
"Languages were first invented by humans, for the benefit of humans. In
the annals of computer science, this fact has occasionally forgotten.
Since Perl was designed (loosely speaking) by an occasional linguist, it
was designed to work smoothly in the same ways that natural language works
smoothly. Naturally, there are many aspects to this, since natural language
works well at many levels simultaneously. We could enumerate many of these
linguistic principles here, but the most important principle of laguage
design is simply that easy things should be easy, and hard things should be
possible. That may seem obvious, but many computer languages fail at one or
"Most important, you don't have to know everything about Perl before you can
write usefull programms. You can learn Perl "small end first". You can
programm in Perl Baby-Talk, and we promise not to laugh."
Another "linguistic principle" of Perl is that a language does
not need to be simple (minimalistic) to be easy to learn and use.
"The fact is, your brains are built to do Perl programming."
There is a transcript of a talk about this ("2nd State of the Onion")
Marcus Denker marcus at ira.uka.de fon at home:(0721)614235 @work:(0721)608-2749
More information about the Squeak-dev