Re: Chuck's Fireside Chat at Forth Day
- To: Jeff Fox <jfox@xxxxxxxx>
- Subject: Re: Chuck's Fireside Chat at Forth Day
- From: KC5TJA <kc5tja@xxxxxxxxxxxxxxxxxxxxxx>
- Date: Mon, 16 Nov 1998 12:36:23 -0800 (PST)
- cc: MISC
- In-Reply-To: <199811160257.WAA20130@pisa.rockefeller.edu>
On Sun, 15 Nov 1998, Jeff Fox wrote:
> (blue) SQRT (red) 1. (green) 1FF. ; (red) *. (green) 1.
> */ ; (red) /. (green) 1. SWAP */
> ; (red) 3/2 (green) DUP DUP *. *. *. (red)
> SQRT (green) DUP 1. - 1 + +
> 2/ 1. + SWAP OVER /.
> + 2/ ; (black) END
Sorry for complaining, but this formatting is pretty bad. If only e-mail
supported colors natively, without having to resort to such trickery as
HTML. :)
However, all things considered, this is, by far, the first satisfactory
explanation of what color forth is that I've seen. I personally am
opposed to Chuck's shortening of words -- I prefer longer words myself.
However, syntax highlighting would seem to be useful on the surface.
The above code would be written, I think, in normal Forth as follows:
: 1. $1FF ;
: *. 1. */ ;
: /. 1. SWAP */ ;
: SQRT DUP 1. - 1 + + 2/ 1. + SWAP OVER /. + 2/ ;
: CUBED DUP DUP *. *. *. ; ( my own word -- sorry, but I factor! )
: 3/2 CUBED SQRT ;
I dunno...I think I would like to have syntax highlighting, but not actual
color Forth. That makes the compiler too complicated, in my opinion. I'd
rather put the complexity in the editor, myself. :)
However, what Chuck is describing sounds more like he's making it more
Smalltalk-ish, where there are no class-building words. Instead, you
create a new class by telling a base class to subclass itself. In Color
Forth, you tell the compiler directly, "hey, there's a new word HERE.
Make it so" while you're editing.
In some respects, that may be useful, but in the end run, I prefer my
plain vanilla, old-fashioned, black-and-white, text-only Forth system.
*grin*
Just my opinions... :)
==========================================================================
KC5TJA/6 | -| TEAM DOLPHIN |-
DM13 | Samuel A. Falvo II
QRP-L #1447 | http://www.dolphin.openprojects.net
Oceanside, CA |......................................................