language aesthetics

george young gry at ll.mit.edu
Thu May 22 11:41:01 EDT 2003


On 20 May 2003 17:51:11 -0700
pcolsen at comcast.net (Peter Olsen) threw this fish to the penguins:

> sandskyfly at hotmail.com (Sandy Norton) wrote in message news:<b03e80d.0305160317.2963cab1 at posting.google.com>...
> > Hi,
> > 
> > I often worry that I've become so 'comfortable' with python that I may
> > end turning into a language bigot not appreciating the ideas and
> > motivations behind other language designs. As a counter to this, I
> > usually take it upon myself to put some effort into learning how other
> > languages do it. At times this leads to wonderful and rewarding
> > journeys (e.g. haskell), and at other times, I run away screaming back
> > to pythonistan (e.g.
> > http://www.perl.com/pub/a/2003/04/09/synopsis.html ).
> > 
> > My question is: what other languages 'fit' the common aesthetic (if it
> > exists) of a pythonista?

Oh dear, I don't think I can keep silent... I am, by the way,
quite fond of lisp, of any dialect.  The several months I once
spent developing in it were quite enjoyable.  

However, I write to suggest an even more radical direction.  In 1964
Ken Iverson at IBM implemented a language called APL.  APL is
an interactive, array-oriented language of stunning conciseness,
which, classically, uses it's own rich symbol set.  The non-ascii
symbol set was a major obstacle to it's popularity, though
it had some years of favor in IBM research labs and, I believe, 
in the financial sector.  There are various implementations you
can find on the web.

More to my point, there's a recent language called "J".
[http://www.jsoftware.com]
J is the direct descendant, or perhaps a total re-engineering of,
APL(by Iverson!).  It uses only a plain ascii character set, but
retains the style and most of the structure of APL, redesigned
a bit with hindsight. 

J has the same stunning conciseness as APL.
I don't mean "Oh, this is kind of neat" ... It's more like being
slapped hard in the face with an ice-water soaked towel.  The charm
of it's brevity can also be completely and *totally*
unreadable.  But the allure is the very powerful and very
*different* way of thinking about algorithms.  J (or APL) will
stretch your brain in almost painful, but enlightening ways.
I believe it's free to students and fairly cheap otherwise. 

[Hmm, perhaps I shouldn't post when under the influence of
 muscle relaxants for back strain... was this a bit loopy?]

-- George


...I think it was E. Dijkstra who wrote a solution of the "Towers
of Hanoi" problem in one *short* line of APL...


-- 
 I cannot think why the whole bed of the ocean is
 not one solid mass of oysters, so prolific they seem. Ah,
 I am wandering! Strange how the brain controls the brain!
	-- Sherlock Holmes in "The Dying Detective"




More information about the Python-list mailing list