[email@example.com: Re: language-manifesto]
Francois-Rene Rideau <firstname.lastname@example.org>
Tue Aug 13 22:10:02 2002
Content-Type: text/plain; charset=iso-8859-1
I've been contacting Jonathan Rees about various subjects,
and asked him to comment about T. Here's his answer...
[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
[ TUNES project for a Free Reflective Computing System | http://tunes.org ]
A programming language is low level
when its programs require attention to the irrelevant.
-- Alan Perlis
Received: from samaris
([127.0.0.1] helo=localhost ident=fetchmail)
by Samaris with esmtp (Exim 3.35 #1)
for fare@localhost; Mon, 12 Aug 2002 05:09:26 +0200
Received: from mail.bespin.org [22.214.171.124]
by localhost with IMAP (fetchmail-5.9.11)
for fare@localhost (single-drop); Mon, 12 Aug 2002 05:09:26 +0200 (CEST)
Received: from rosebud (sdsl-64-7-15-66.dsl.bos.megapath.net [126.96.36.199])
by bespin.org (Postfix) with ESMTP id E3B50D65
for <email@example.com>; Sun, 11 Aug 2002 20:05:58 -0700 (PDT)
Received: from ping
([192.168.2.10] helo=ping.mumble.net.mumble.net ident=jar)
by rosebud with esmtp (Exim 3.12 #1 (Debian))
id 17e5VA-0002j8-00; Sun, 11 Aug 2002 23:04:16 -0400
In-reply-to: <20020706210245.GA6873@hell.mine.nu> (message from Francois-Rene
Rideau on Sat, 6 Jul 2002 23:02:45 +0200)
Subject: Re: language-manifesto
From: Jonathan A Rees <firstname.lastname@example.org>
References: <20020622001317.GA23864@ZhengHe.hell.mine.nu> <E17O0k9-0005nF-00@rosebud> <20020701222509.GA4378@hell.mine.nu> <20020706210245.GA6873@hell.mine.nu>
Date: Sun, 11 Aug 2002 23:04:16 -0400
Date: Sat, 6 Jul 2002 23:02:45 +0200
From: Francois-Rene Rideau <email@example.com>
BTW, while I'm at it, what do you think of T?
I mean, what would be good or wrong about resurrecting T?
You must have ideas about what was great/wrong about it,
what makes it modern or obsolete today, etc.
Is there any kind of hindsight report about T?
(I have read the fascinating piece by Olin Shivers
about the history of T, but I suppose I'm looking for something
more specific about the technicalities of language/system design.)
BTW, what has been, is, or will be your involvement with E?
I haven't thought about it much since I stopped using it in about
1985, but here are some thoughts:
- I was pleased to learn that the anonymous-operation idea (generic
operations as keys that can be controlled) had some role in
something called "energetic secrets" in Joule, but I don't know any
- I have come across people lately (e.g. Paul Graham, Stan Letovsky)
who think T was great, and that's gratifying.
- I'm glad that capability semantics is finally being fleshed out in
E; it's something I wanted to develop in T but didn't.
- In retrospect I think the emphasis on fast native code was
misguided, and that T would have had more impact if its development
effort had gone into portability and its interface to external
facilities, such as graphics, OS processes, and the network (same
goes for Scheme 48).
- I think object-oriented programming is overrated (you probably saw
my flame on that subject). Nowadays I would do my best to make a
language have a declarative flavor to it, even if it weren't a logic
or functional language.
- The idea of having lots of meta-operations on functions still seems
good, but there's probably a better way to do it.
- I have mixed feelings about "unspecified" behavior and values. On
the one hand one wants a language to embody the weakest adequate
theory, which means lots of underspecification. On the other hand,
it seems inevitable that users will take any particular interpreter
as an oracle for the intended theory and equate the interpreter's
total extension of the theory to be the same as the theory itself.
So I have a lot of sympathy for the total determinism found in ML
and E - it allows the user to use the interpreter to verify a class
of weak theorems (x evaluates to y).
I need to look over Olin's piece again so that I can alert him of
inaccuracies, of which I found many when I first scanned it. But I'm
glad he wrote it down.