### Diff for /gforth/Attic/gforth.ds between versions 1.6 and 1.9

version 1.6, 1995/01/18 18:41:37 version 1.9, 1995/01/30 18:47:47
Line 607  The standard guarantees that addresses r Line 607  The standard guarantees that addresses r
are cell-aligned; in addition, gforth guarantees that these addresses  are cell-aligned; in addition, gforth guarantees that these addresses
are aligned for all purposes.  are aligned for all purposes.

Note that the standard defines a word @code{char}, which has nothing to
do with address arithmetic.

doc-chars  doc-chars
doc-char+  doc-char+
doc-cells  doc-cells
Line 801  Therefore we recommend avoiding using @c Line 804  Therefore we recommend avoiding using @c
@var{n}. One alternative is @code{@var{n} S+LOOP}, where the negative  @var{n}. One alternative is @code{@var{n} S+LOOP}, where the negative
case behaves symmetrical to the positive case:  case behaves symmetrical to the positive case:

@code{-2 0 ?DO  i .  -1 +LOOP}  prints @code{0 -1}  @code{-2 0 ?DO  i .  -1 S+LOOP}  prints @code{0 -1}

@code{-1 0 ?DO  i .  -1 +LOOP}  prints @code{0}  @code{-1 0 ?DO  i .  -1 S+LOOP}  prints @code{0}

@code{ 0 0 ?DO  i .  -1 +LOOP}  prints nothing  @code{ 0 0 ?DO  i .  -1 S+LOOP}  prints nothing

The loop is terminated when the border between @var{limit@minus{}sgn(n)} and  The loop is terminated when the border between @var{limit@minus{}sgn(n)} and
@var{limit} is crossed. However, @code{S+LOOP} is not part of the ANS  @var{limit} is crossed. However, @code{S+LOOP} is not part of the ANS
Line 885  The standard does not allow using @code{ Line 888  The standard does not allow using @code{
every @code{?DO} etc. there is exactly one @code{UNLOOP} on any path  every @code{?DO} etc. there is exactly one @code{UNLOOP} on any path
through the definition (@code{LOOP} etc. compile an @code{UNLOOP} on the  through the definition (@code{LOOP} etc. compile an @code{UNLOOP} on the
fall-through path). Also, you have to ensure that all @code{LEAVE}s are  fall-through path). Also, you have to ensure that all @code{LEAVE}s are
resolved (by using one of the loop-ending words or @code{UNDO}).  resolved (by using one of the loop-ending words or @code{DONE}).

Another group of control structure words are  Another group of control structure words are

Line 1038  locals are initialized with values from Line 1041  locals are initialized with values from
Currently there is no way to define locals with user-defined data  Currently there is no way to define locals with user-defined data
structures, but we are working on it.  structures, but we are working on it.

GNU Forth allows defining locals everywhere in a colon definition. This poses the following questions:  GNU Forth allows defining locals everywhere in a colon definition. This
poses the following questions:

* Where are locals visible by name?::    * Where are locals visible by name?::
Line 1624  GForth comes with @file{gforth.el}, an i Line 1628  GForth comes with @file{gforth.el}, an i
@file{forth.el} by Goran Rydqvist (icluded in the TILE package). The  @file{forth.el} by Goran Rydqvist (icluded in the TILE package). The
improvements are a better (but still not perfect) handling of  improvements are a better (but still not perfect) handling of
indentation. I have also added comment paragraph filling (@kbd{M-q}),  indentation. I have also added comment paragraph filling (@kbd{M-q}),
commenting (@kbd{C-x \}) and uncommenting (@kbd{C-x |}) regions and  commenting (@kbd{C-x \}) and uncommenting (@kbd{C-u C-x \}) regions and
removing debugging tracers (@kbd{C-x ~}). I left the stuff I do not use  removing debugging tracers (@kbd{C-x ~}, @pxref{Debugging}). I left the
alone, even though some of it only makes sense for TILE. To get a  stuff I do not use alone, even though some of it only makes sense for
description of these features, enter Forth mode and type @kbd{C-h m}.  TILE. To get a description of these features, enter Forth mode and type
@kbd{C-h m}.

In addition, GForth supports Emacs quite well: The source code locations  In addition, GForth supports Emacs quite well: The source code locations
given in error messages, debugging output (from @code{~~}) and failed  given in error messages, debugging output (from @code{~~}) and failed

 Removed from v.1.6 changed lines Added in v.1.9

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>