[comp.lang.forth] ANS NOT

wmb@MITCH.ENG.SUN.COM (07/04/90)

I'm concerned that some harsh evaluations may be based on misunderstandings:


>The one that really galls me is NOT. For twenty years 'NOT' has been a
>simple boolean 'NOT'.

Forth-79 says:
	NOT	( flag -> ! flag )  Reverse truth value.  Equivalent to 0=.

Forth-83 says:
	NOT	( 16b1 -- 16b2 )    16b2 is the one's complement of 16b1

Quoting from Kelly and Spies _FORTH: A Text and Reference_, p34:

	There is another word, NOT , whose use is inconsistent in different
	dialects of FORTH.  In most dialects and in FORTH-79, NOT doesn't
	change bits; it does something quite different ... .  In FORTH-83,
	however, NOT changes each bit to its opposite.

ANS Forth didn't change or "kill" NOT .  Forth-83 changed (and thus
ultimately killed) NOT .  ANS Forth simply noted that the damage has
already been done, and is beyond repair, unless you are willing to
break "most dialects" (as claimed in Kelly and Spies) of Forth.

Mitch Bradley

dwp@willett.UUCP (Doug Philips) (07/04/90)

wmb@MITCH.ENG.SUN.COM, in <9007040412.AA28121@ucbvax.Berkeley.EDU>, writes:

> ANS Forth didn't change or "kill" NOT .  Forth-83 changed (and thus
> ultimately killed) NOT .  ANS Forth simply noted that the damage has
> already been done, and is beyond repair, unless you are willing to
> break "most dialects" (as claimed in Kelly and Spies) of Forth.

At this point I'm inclinded to think it is Forth programmers that have
killed Forth.  I think Mitch's earlier point 'divided (no pun intended)
we fall, united we stand' is important.  I suspect that there are
factions within the Forth community who would rather see it die that become
"standardized" (or at least standardized to anything other than what they
have).  Perhaps die is to strong a word, but "languish" may not be.

1) Can Forth be standardized?  (Moore says so [FD #1, Vol???])

1a) Is Forth, by nature, something that will "die" if standardized?  Does it
represent a degree of freedom that is impossible to "standardize" without
losing the essence?

1b) Is the lack of a de-facto Forth standard due to something about
Forth itself (1a) or due to something about (policital nature?) Forth
programmers?

2) Should Forth be standardized?  Why did the people who got together
to do Forth-79, Forth-83 and now ANSI Forth do what they did?  Is Wavrik's
(and others too) goal of a common base realistic?  (as opposed to
theoretically attainable)

3) Assuming that Forth can be standardized, is it realistic to expect
that technical merits will be used to extract the best of the current
existing practice?  Is it reasonable to assume that if a consensus arises
that anyone will be happy with it, as opposed to merely being too tired to
keep on fighting?

3) Does it really matter if the current crop of Forth programmers will use
the/a standard (Baden's question)?  Is it important only for
the next generation of Forth programmers (like me) who aren't yet tied into
any of the existing systems?  Will it only matter to those who want to
write "really" portable Forth programs?

3a) Perhaps the importance of the standard won't be in how many
implementations conform to it, or how may conforming programs are written
in it, but in identifying what the late 1980s, early 1990s portability
issues are for Forth programmers?

-Doug

---
Preferred: willett!dwp@hobbes.cert.sei.cmu.edu OR ...!sei!willett!dwp
Daily: ...!{uunet,nfsun}!willett!dwp   [in a pinch: dwp@vega.fac.cs.cmu.edu]