Diff for /gforth/Attic/gforth.ds between versions 1.6 and 1.12

version 1.6, 1995/01/18 18:41:37 version 1.12, 1995/03/13 09:17:26
Line 428  unwary (e.g., floating point addition is Line 428  unwary (e.g., floating point addition is
 for the wary. You should not use them unless you know what you are doing  for the wary. You should not use them unless you know what you are doing
 or you don't care that the results you get are totally bogus. If you  or you don't care that the results you get are totally bogus. If you
 want to learn about the problems of floating point numbers (and how to  want to learn about the problems of floating point numbers (and how to
 avoid them), you might start with @cite{David (?) Goldberg, What Every  avoid them), you might start with @cite{David Goldberg, What Every
 Computer Scientist Should Know About Floating-Point Arithmetic, ACM  Computer Scientist Should Know About Floating-Point Arithmetic, ACM
 Computing Surveys 23(1):5@minus{}48, March 1991}.  Computing Surveys 23(1):5@minus{}48, March 1991}.
   
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 625  doc-dfloats Line 628  doc-dfloats
 doc-dfloat+  doc-dfloat+
 doc-dfalign  doc-dfalign
 doc-dfaligned  doc-dfaligned
   doc-maxalign
   doc-maxaligned
   doc-cfalign
   doc-cfaligned
 doc-address-unit-bits  doc-address-unit-bits
   
 @node Memory block access,  , Address arithmetic, Memory access  @node Memory block access,  , Address arithmetic, Memory access
Line 801  Therefore we recommend avoiding using @c Line 808  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 878  doc-next Line 885  doc-next
 doc-leave  doc-leave
 doc-?leave  doc-?leave
 doc-unloop  doc-unloop
 doc-undo  doc-done
   
 The standard does not allow using @code{cs-pick} and @code{cs-roll} on  The standard does not allow using @code{cs-pick} and @code{cs-roll} on
 @i{do-sys}. Our system allows it, but it's your job to ensure that for  @i{do-sys}. Our system allows it, but it's your job to ensure that for
 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 1045  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:
   
 @menu  @menu
 * Where are locals visible by name?::    * Where are locals visible by name?::  
Line 1312 local0 Line 1320 local0
 compile the right specialized version, or the general version, as  compile the right specialized version, or the general version, as
 appropriate:  appropriate:
   
 doc-compile-@@local  doc-compile-@local
 doc-compile-f@@local  doc-compile-f@local
 doc-compile-lp+!  doc-compile-lp+!
   
 Combinations of conditional branches and @code{lp+!#} like  Combinations of conditional branches and @code{lp+!#} like
Line 1624  GForth comes with @file{gforth.el}, an i Line 1632  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.12


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