Language extensibility (was: Why is tcl broken?)

Christopher Browne cbbrowne at news.hex.net
Sat Jul 3 00:28:53 EDT 1999


On Thu, 01 Jul 1999 19:20:36 GMT, William Tanksley
<wtanksle at dolphin.openprojects.net> wrote:
>On 01 Jul 1999 19:11:53 +0200, Lars Marius Garshol wrote:
>>* William Tanksley
>
>[I made the joking claim that Lisp was an improvement on Forth, then to
>defuse criticism I claimed:]
>>| (Yes, I know -- the ancestry goes the other way around: Lisp ->
>>| Scheme -> Forth.)
>
>>Huh? Forth dates back to the 60s, whereas Scheme is from 1975, and I'm
>>quite unsure of whether Chuck Moore knew Lisp at all.
>
>I don't think Forth is that old, certainly not in any usable form.  Here,
>according to the history on www.forth.com, "the first program to be called
>Forth was written in about 1970."  That substantiates what you're saying
>about Scheme -- I'm a little suprised.  Okay, toss Scheme out of the
>ancestry ;-).

Yes, please.  If there's relationship between Forth and Lisp, it does
not lie in the Scheme direction.

>Chuck Moore, the inventor of Forth, got a BA in physics from MIT and went
>into grad school at Stanford.  He claims to have taken classes from and
>learned a lot from Lisp.

I don't remember seeing any indication of Moore having encountered
Lisp; if so, that is very interesting.

>Forth is very much like Lisp, with the subtraction of memory management
>and the addition of implicit parameter passing.  Forth is Lisp for people
>who prefer "as simple as possible" to "but no simpler."  (And it IS a very
>good language; I use it more than Scheme.)
>
>A paragraph like that is neccesarily an oversimplification.  Perhaps I can
>get away with saying that Forth learned more from Lisp than it did from
>any other language existing at the time?  Yes, I think that's tenable.

Moore was (and seems still to be) *very* independently-minded; anyone
that remembers "BLOCK wars" or "FP stack wars" or "Is ANSI Forth
uselessly incompatible?" is probably also aware that Moore has been
sufficiently "extreme" as to be above and beyond all such "petty"
disagreements.

The fact that he actually designed some microprocessors with OK makes
the unbelievably sparse architecture of OK seem faintly believable.

(Or, putting it another way, if he *hadn't* done such massive things
as designing several Forth-related languages, founding companies, and
designing, building, and even *selling* families of microprocessors,
the rather radical things he says would probably be regarded as the
ravings of a Net.Kook.)

Forth has enough common features (e.g. - having a stack, which allows
recursion even in the simplest of words) with Lisp as to make an
association not unbelievable.

But the lack of GC, dynamic allocation, and the likes keep them
distant enough that you have to look closely to see the resemblance.
-- 
DOS: n., A small annoying boot virus that causes random spontaneous
system crashes, usually just before saving a massive project.  Easily
cured by UNIX.  See also MS-DOS, IBM-DOS, DR-DOS.  (from David Vicker's
.plan)
cbbrowne at hex.net- <http://www.hex.net/~cbbrowne/langobscure.html>




More information about the Python-list mailing list