Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #18062

Re: Foreword

Date 2012-12-17 21:55 -1000
From "Elizabeth D. Rather" <erather@forth.com>
Organization FORTH, Inc.
Newsgroups comp.lang.forth
Subject Re: Foreword
References <op.wpg7mlkhsu5d0p@david> <kao71p$q93$1@speranza.aioe.org>
Message-ID <heSdnTacDfX6vE3NnZ2dnUVZ_uWdnZ2d@supernews.com> (permalink)

Show all headers | View raw


On 12/17/12 12:40 PM, Rod Pemberton wrote:
> "Peter Knaggs" <pjk@bcs.org.uk> wrote in message
> news:op.wpg7mlkhsu5d0p@david...
>> Problem
>> =======
>>
>> A number of people have commented on the two Forewords, asking
>> why we have retained the Foreword to ANS Forth.  As this is a
>> derived work, keeping the original foreword seemed like a good
>> idea. I also liked introduction.  However, I accept this can
>> lead to confusion.
>>
>> Solution
>> ========
>>
>> Replace both Forewords with one new Foreword, given below.
>>
>> Proposal
>> ========
>>
>> 1) Remove the Foreword (to Forth 200x/2012)
>>
>> 2) Remove the Foreword to ANS Forth
>>
>> 3) Add the following Foreword.
>
> No offense to the people here, but I really don't care about what
> is or isn't in a foreword of a specification.
>
> I will make comments though.
>

I'm not sure how many language standards you're familiar with. When we 
started working on Forth94 (in 1986) we studied several. They all begin 
with some background on the language.


>>      Foreword
>>      ========
>>
>>      Forth is a language for direct communication between human
>> beings and machines. Using natural-language diction and
>> machine-oriented syntax, Forth provides an economical,
>> productive environment for interactive compilation and execution
>> of programs.  Forth also provides low-level access to
>> computer-controlled hardware, and the ability to extend the
>> language itself. This extensibility allows the language to be
>> quickly expanded and adapted to special needs and different
>> hardware systems.
>
> Apparently, this is to provide a reader of the ideology or
> philosophy behind Forth.  However, the description seems to be
> limiting the idea of where Forth is actually useable to places
> where Forth has had success historically, such as machine control.
>
> I.e., I wouldn't guess that Forth is as useful as C, or more so as
> those here claim it is, by reading that paragraph ...

I would encourage you to propose an alternative, or edited version.

> Also, by stating Forth is for "interactive compilation" and
> "execution of programs".  The description seems to dissuade the
> reader from the history of Forth being an interpreted language, or
> beginning as one.

Forth has always compiled something more immediately executable than the 
tokens characteristic of early Basic, Pascal, or Lisp, so this 
distinction is relevant. 70's Forths dramatically outperformed 
then-conventional interpreters, as most compiled absolute addresses that 
could be executed with a NEXT of ~2 (sometimes only 1) machine instruction.

>>      Forth was invented by Mr. Charles Moore to increase
>> programmer productivity without sacrificing machine efficiency.
>> Forth is a layered environment containing the elements of a
>> computer language as well as those of an operating system
>> and a machine monitor. This extensible, layered environment
>> provides for highly interactive program development and testing.
>
> How many Forth's today actually include an operating system and
> machine monitor?  (Zero.  Or, near zero ...)

Virtually all in embedded systems. Desk- and laptop computers run OSs, 
and although embedded systems can, with Forth they don't have to.

> When I read "invented ... to increase programmer productivity", I
> naturally wonder if it was proven productivity increases with
> Forth.  I.e., it's written as if the claim is valid or accepted.
> That's probably only true within the Forth community.  Perhaps, "
> Forth was invented by Mr. Charles Moore in an attempt to increase
> his productivity without sacrificing machine efficiency." is more
> appropriate.

For many years I offered to support anyone who wanted to undertake an 
academic study of this, but I got no takers. Still, there are so many 
instances within my immediate personal experience that I am perfectly 
comfortable with that assertion, and everyone else on the TC has similar 
direct experience to back it up. Estimates of "months" by experienced C 
programmers turned into the same number of weeks with Forth programmers. 
Time after time. Without exception.

>>      In the interests of transportability of application software
>> written in Forth, standardization efforts began in the mid-1970s
>> by an international group of users and implementors who adopted
>> the name "Forth Standards Team". This effort resulted in the
>> Forth-77 Standard.  As the language continued to evolve, an
>> interim Forth-78 Standard was published by the Forth Standards
>> Team. Following Forth Standards Team meetings in 1979, the
>> Forth-79 Standard was published in 1980.  Major changes were
>> made by the Forth Standards Team in the Forth-83 Standard,
>> which was published in 1983.
>
> History.  Basically, IIRC, this is the same as the citations or
> references or bibliography at the end of the document.  At a
> minimum, the publishing dates don't need to be written out.  E.g.,
> "Forth-79 Standard (1980)."

History is relevant to a standard.

>>     The ANS Forth committee was formed in 1987 to address the
>> fragmentation within the Forth community caused not only by
>> the difference between Forth 79 and Forth 83 but the
>> exploitation of technical developments. Undertaking a
>> comprehensive review of existing implementations they moved
>> away from prescribing stringent requirements, preferring to
>> describe the operation of the virtual machine, without reference
>> to an implementation. The ANS Forth Standard was published
>> in 1994 [1] and was adopted as an international standard
>> in 1997 [2].
>
> More history.  Summary: "We abstracted Forth."  Is any of this
> important?  Most of these paragraphs seem suitable to a "history"
> section, not a foreword which should describe what the document is
> and introduce the language.

Ok, you're not interested in history. Some people are. It is appropriate 
for a standard to supply a brief history.

>>      The Forth Standards Committee was formed in 2004 to allow
>> the Forth community to contribute to a rolling document. Changes
>> were proposed and discussed in the electronic media:  the
>> comp.lang.forth news group; the forth200x@yahoogroups.com
>> email list; the www.forth200x.org web site. An annual public
>> meeting was held to review and vote on the proposed changes.
>> The resulting document is known as the Forth 200x Standard.
>
> What's a "rolling" document?  Is there a hill and valley around
> here?  Why is the document rolling down it ...  ;-)
>
> Maybe try "preliminary" or "in-progress" or "initial" or "dynamic"
> or just remove "rolling", etc.
>
> What is the purpose of the 'x' in 200x?  Shouldn't it be 20xx
> since were now in double-digits, i.e., 2012 ...
>
>>      This document is a snapshot of that rolling document,
>> representing the outcome of the public review meetings first
>> held on October 21-22, 2005 in Santander and subsequently on
>> September 14-15, 2006 (Cambridge), September 13-14, 2007
>> (Dagstuhl), September 25--26, 2008 (Vienna), March 25-27, 2009
>> (Neuenkirchen, Rheine), September 2-4, 2009 (Exeter), March
>> 24-26, 2010 (Rostock), September 22-24, 2010 (Hamburg),
>> September 21-23, 2011 (Vienna), September 12-14, 2012 (Oxford).
>
> Why does this detail need to be present in a foreword? Shouldn't
> this be near the appendices? Actually, why does anyone really want
> to know this AT ALL ... ?  The only information it provides to me
> is the fact I didn't attend any of the review meetings.  It
> doesn't state who was there or what was decided.  Even if it did,
> it's not of any importance to the specification.

Because it's traditional in language standards. Likewise the rest of the 
stuff you think is unnecessary. Look, a Standard is a formal document, 
quite different from a manual, a tutorial, or other kind of document. 
There are certain expectations in the Standards Community (yes, there is 
one) just as there are expectations of things to be included in an 
academic paper or other formal document. If you're going to make the 
effort to produce a standard, you need to acknowledge these expectations.

Cheers,
Elizabeth

-- 
==================================================
Elizabeth D. Rather   (US & Canada)   800-55-FORTH
FORTH Inc.                         +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

"Forth-based products and Services for real-time
applications since 1973."
==================================================

Back to comp.lang.forth | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

RfC: Foreword "Peter Knaggs" <pjk@bcs.org.uk> - 2012-12-17 19:40 +0000
  Re: Foreword "Rod Pemberton" <do_not_have@notemailnotz.cnm> - 2012-12-17 17:40 -0500
    Re: Foreword "Elizabeth D. Rather" <erather@forth.com> - 2012-12-17 21:55 -1000
      Re: Foreword "Rod Pemberton" <do_not_have@notemailnotz.cnm> - 2012-12-18 19:22 -0500
        Re: Foreword Peter Knaggs <pjk@bcs.org.uk> - 2012-12-19 10:03 +0000
          Re: Foreword "Rod Pemberton" <do_not_have@notemailnotz.cnm> - 2012-12-21 02:39 -0500
          Re: Foreword "Elizabeth D. Rather" <erather@forth.com> - 2012-12-20 22:16 -1000
        Re: Foreword rickman <gnuarm@gmail.com> - 2012-12-19 16:09 -0500
          Re: Foreword "Rod Pemberton" <do_not_have@notemailnotz.cnm> - 2012-12-21 02:20 -0500
        Re: Foreword "Ed" <invalid@nospam.com> - 2012-12-23 00:43 +1100
          Re: Foreword "A. K." <akk@nospam.org> - 2012-12-22 16:44 +0100
            Re: Foreword "Ed" <invalid@nospam.com> - 2012-12-27 19:54 +1100
              Re: Foreword Alex McDonald <blog@rivadpm.com> - 2012-12-27 05:36 -0800
                Re: Foreword Alex McDonald <blog@rivadpm.com> - 2012-12-27 05:40 -0800
          Re: Foreword Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-12-22 10:07 -0600
  Re: RfC: Foreword "A. K." <akk@nospam.org> - 2012-12-18 08:27 +0100
    Re: RfC: Foreword Elizabeth D Rather <erather@forth.com> - 2012-12-17 22:24 -1000
      Re: RfC: Foreword "A. K." <akk@nospam.org> - 2012-12-18 20:38 +0100
        Re: RfC: Foreword "Elizabeth D. Rather" <erather@forth.com> - 2012-12-18 09:54 -1000
          Re: RfC: Foreword "A. K." <akk@nospam.org> - 2012-12-18 22:00 +0100
            Re: RfC: Foreword "Elizabeth D. Rather" <erather@forth.com> - 2012-12-18 11:21 -1000
              Re: RfC: Foreword "A. K." <akk@nospam.org> - 2012-12-20 07:56 +0100
                Re: RfC: Foreword Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-12-20 03:38 -0600
                Re: RfC: Foreword "Rod Pemberton" <do_not_have@notemailnotz.cnm> - 2012-12-21 02:20 -0500
                Re: RfC: Foreword Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-12-21 04:02 -0600
          Re: RfC: Foreword "Rod Pemberton" <do_not_have@notemailnotz.cnm> - 2012-12-18 19:24 -0500
            Re: RfC: Foreword Alex McDonald <blog@rivadpm.com> - 2012-12-18 22:46 -0800
              Re: RfC: Foreword "Rod Pemberton" <do_not_have@notemailnotz.cnm> - 2012-12-21 02:21 -0500
                Re: RfC: Foreword Alex McDonald <blog@rivadpm.com> - 2012-12-21 15:24 -0800

csiph-web