[squeak-dev] Smalltalk and English (was: Vote for the best Smalltalk book of the last 5 years...)

Jecel Assumpcao Jr. jecel at merlintec.com
Tue Sep 7 18:39:37 UTC 2010


Serge Stinckwich wrote on Tue, 07 Sep 2010 20:32:46 +0700
> On 07/09/10 18:17, Stéphane Rollandin wrote:
> > IMHO, considering how close is reading and writing Smalltalk code to
> > reading and writing English text, I don't see how translating books will
> > be enough to spread Smalltalk in the world: one has to read english to
> > make sense of most methods usage... I believe Smalltalk is doomed to be
> > a programming language for English speakers; that's unfortunate but I
> > don't see a way out of that situation.
> 
> This is not specific to Smalltalk. The problem is the same with every 
> programming language.

When I started my Smalltalk computer project in Brazil back in 1984, it
was obvious to me that the English aspect of the language was going to
be a huge problem. The bulk of programs written in Basic, Pascal and
dBase were words invented by the programmers themselves and were nearly
always in their native language. Only a very short list of keywords had
to be in English and so carefully memorized. In constrast, Smalltalk-80
had a huge library and the only practical way to program in the language
was to be able to understand what a message was supposed to do from its
name rather than by memorizing each one.

Of course, all currently popular languages also have tons of libraries
so that this problem is no longer specific to Smalltalk. That doesn't
make it any less of a problem, however.

In 1984 I translated all the symbols listed in the blue book into
Portuguese. There were several pretty complicated problems and I can't
say I was too happy with my solutions, but I felt it was important to
deal with the problem. I designed a MultiSymbol class so you could type
in your sources in either English or Portuguese (and other languages in
the future) and then see in the browser whatever you liked best. That
allowed source to be shared between people using different native
languages including typing in code published in some book or magazine. A
couple of years later I actually tested this scheme in Smalltalk V and
it worked great.

It didn't handle comments, of course, and was limited to the original
libraries. As programmers added to the vocabulary the translations would
be missing. So I came up with a solution for semi-automatic translation
using the Universal Network Language. That would allow a programmer
familiar with just one native language to generate code and
documentations that could be read in any other language.

http://en.wikipedia.org/wiki/Universal_Networking_Language

This is still on my "to do" list. While it might seem reasonable to
people on this list to tell others "you have to learn English if you
want to program", we are hardly a representative group.

-- Jecel




More information about the Squeak-dev mailing list