home .. forth .. colorforth mail list archive ..

Re: [colorforth] Re: objects and forth


From: <vaded@xxxxxxxxxxxxxx>
To: <colorforth@xxxxxxxxxxxxxxxxxx>
Sent: Sunday, February 08, 2009 11:57 AM
Subject: Re: [colorforth] Re: objects and forth



On Sun, 8 Feb 2009 00:28:24 -0600, "John R. Strohm" <strohm@xxxxxxxxxxx>
said:
The question was whether learning C, Smalltalk, or LISP before attempting
to
learn FORTH would help or hurt.

Smalltalk is, as near as I can tell without spending a LOT of time
learning it
in detail, inextricably tangled up in twisted weave of classes.  None of
C,
LISP, or FORTH have that particular feature.  All can be extended with
classes.
C has two main ways, Objective C and C++.  LISP does it with CLOS.
FORTH, you
roll your own, but look at CREATE-DOES> for a starting point.

It is not clear to me that requiring the student to master many
intricacies of
object-oriented design and programming is all that likely to help him
learn the
mindset of a language that explicitly does not include object
orientation.

On The Gripping Hand, as Niven & Pournelle fans say, the RIGHT way to
learn
FORTH is to grab a copy of Leo Brodie's wonderful book "Starting FORTH",
and
work through it.  Follow that up with "Thinking FORTH", by the same
author.

I like the two mentioned books by Brodie, but _so much has changed_
since they were written that I'm not sure if they should still be the
recommended introduction to Forth.

(Bottom-posting to keep Aleksej from getting his knickers in a twist) While I grant you that "Starting FORTH" used polyFORTH-16 for the exercises and examples, and polyFORTH-16 is long gone, I remain convinced that the concepts behind FORTH at that time are still valid.

Of course, I'm also the guy who got into a mild argument with Elizabeth Rather about how much of FORTH's productivity gains came from the highly-interactive nature of the implementation, and how much of it came from the block systems that forced ruthless factoring of definitions until every individual definition would fit in no more than 16 lines of at most 64 characters.



---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
Main web page - http://www.colorforth.com