Chris,

> Well, I don't think anyone has mentioned Icon yet, but it is a pretty cool
> language.  It has some very original ideas; I haven't seen anything else
> like it.

I learned (and taught) Icon in grad school, and while it seemed cool at the
time, that was only because its best-known competition in the scripting world
was shell and Perl. Compared to those, yes, it's pretty cool. I especially like
the concept of multiple return values, as in this example from Ralph Griswold's
/The Icon Programming Language/, pp. 31-32:

  procedure To( i, j )
    while i <= j do {
      suspend i
      i +:= 1
    }
  end

So calling:
  every write( To( 1, 10 ) )
produces
  "1 2 3 4 5 6 7 8 9 10"

For a procedural scripting language, Icon is pretty nice--certainly easier to
read and maintain than Perl. But I think that its obscurity is due to bad
timing. It appears to be older than Perl (I can't find a definitive date for its
creation, but its creator, Ralph Griswold, was also the author of SNOBOL decades
ago), but Perl gobbled up mindshare in the mid-90s with the advent of CGI
scripts. And object-oriented scripts, like Python and Ruby, attract newcomers
who don't want to learn (or have already learned) Perl. As far as I know, it's
also fossilized--even in the late 90s, when I used Icon, the available
interpreters on the major platforms were quite old. And when I taught it, I had
a /very/ hard time finding Griswold's text in any numbers for class.

If I had to teach the same Programming Languages course again today, I'd pick
Ruby or Haskell.

-- 
jason

:wq
___________________________________________________________
This mail sent using ToadMail -- Web based e-mail @ ToadNet