Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!know!zaphod.mps.ohio-state.edu!swrinde!ucsd!ucbvax!MITCH.ENG.SUN.COM!wmb From: wmb@MITCH.ENG.SUN.COM Newsgroups: comp.lang.forth Subject: ANS NOT Message-ID: <9007040412.AA28121@ucbvax.Berkeley.EDU> Date: 3 Jul 90 18:42:37 GMT Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: wmb%MITCH.ENG.SUN.COM@SCFVM.GSFC.NASA.GOV Organization: The Internet Lines: 25 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