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


Groups > comp.lang.forth > #29012

Re: RfD: Interpret S\" (Version 2)

From "Alex McDonald" <blog@rivadpm.com>
Newsgroups comp.lang.forth
Subject Re: RfD: Interpret S\" (Version 2)
Date 2014-03-11 18:36 +0000
Organization A noiseless patient Spider
Message-ID <lfnl3l$7su$1@dont-email.me> (permalink)
References <op.xcj1pdntsu5d0p@david>

Show all headers | View raw


on 11/03/2014 11:18:40, "Peter Knaggs" wrote:
> Interpret S\" (Version 2)
> ===========20140311 Minor revisions thanks to comments on
> comp.lang.forth from Alex McDonald and Steven Pelc.
> 
> 20140209 Original Text
> Gerry Jackson, Bernd Paysan and Peter Knaggs
> 
> 
> Problem
> =====S" is extended in the File-Access word set to be usable in
> interpretation mode.
> 
> S\" is a sister word to S" but is not extended in the same way in the
> File-Access word set.
> 
> It seems to me that S\" is just as useful as S" in interpretation
> mode.
> 
> 
> Discussion
> ========There are two possible solutions:
> 
> Revise the definition of 6.2.2266 S\" to include interpretation
> semantics.  Alternatively, add a new entry 11.6.2.2266 S\" which adds
> the interpretation action, in the same manner as S".
> 
> The interpretation semantics of S" are provided in a separate
> definition, so that small systems are not required to implement it.
> The same can be said of the interpretation semantics for S\". Thus, we
> propose taking the second option, and provide a new definition of S\"
> in the FILE word set to provide the interpretation semantics.
> 
> This brings us to the question of which buffer should S\" use. As S\"
> is intended as an extension to S" it would make sense to allow S\" to
> use the same buffer as S". The description of the buffer lifetime in
> S" will need to be revised.
> 
> The number of available buffers is defined as "At least one".  As a
> number of FILE words require two strings, this would be the right time
> to change this to "at least two".

Andrew Haley objected that it doesn't follow the zero, one, many model. 

> 
> 
> Solution
> ======Provide a new definition in the FILE EXT word set, 11.6.2.2266
> S\" which extends 6.2.2266 S\" by providing interpretation semantics.
> 
> 
> Proposal
> ======a) Replace 11.3.4 Transient String Buffers:
> 
> The list of words using memory in transient regions is extended to
> include 11.6.1.2165 S". See: 3.3.3.6 Other transient regions.
> 
> with:
> 
> The system provides transient buffers for S" and S\" strings.
> These buffers shall be no less than 80 characters in length,
> and there shall be at least two buffers.  The system should
> be able to store two strings defined by sequential use of S"
> or S\".

The length of the buffer is ambiguously defined, since 80 untranslated \l
characters (backslash-L or linefeed) requires 160 characters in the parse
buffer but only 80 characters in the S\" buffer.

> 
> b) Add section A.11.3.4 Transient String Buffers
> 
> Additional transient buffers are provided for use by S" and S\".
> The buffers should be able to store two consecutive strings,
> thus allowing the command line:
> 
> S" name1" S" name2" RENAME-FILE
> 
> The buffers may be implemented in a circular arrangement, where

s/The buffers/When more than two buffers are desired, they/

> a string is placed into the next available buffer.  When there
> are no buffers available, the oldest buffer is overwritten.

This isn't the classic definition, which is an index into some space,
incremented modulo the buffer size.


[snip]

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


Thread

RfD: Interpret S\" (Version 2) "Peter Knaggs" <pjk@bcs.org.uk> - 2014-03-11 11:18 +0000
  Re: RfD: Interpret S\" (Version 2) "Alex McDonald" <blog@rivadpm.com> - 2014-03-11 18:36 +0000
    Re: RfD: Interpret S\" (Version 2) Bernd Paysan <bernd.paysan@gmx.de> - 2014-03-11 21:32 +0100
      Re: RfD: Interpret S\" (Version 2) "Alex McDonald" <blog@rivadpm.com> - 2014-03-11 22:38 +0000
        Re: RfD: Interpret S\" (Version 2) Bernd Paysan <bernd.paysan@gmx.de> - 2014-03-12 13:02 +0100
      Re: RfD: Interpret S\" (Version 2) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2014-03-12 04:41 -0500
        Re: RfD: Interpret S\" (Version 2) Bernd Paysan <bernd.paysan@gmx.de> - 2014-03-12 13:16 +0100
    Re: RfD: Interpret S\" (Version 2) Mark Wills <markwills1970@gmail.com> - 2014-03-12 04:33 -0700
      Re: RfD: Interpret S\" (Version 2) Bernd Paysan <bernd.paysan@gmx.de> - 2014-03-12 12:51 +0100
        Re: RfD: Interpret S\" (Version 2) Mark Wills <markwills1970@gmail.com> - 2014-03-12 06:25 -0700
          Re: RfD: Interpret S\" (Version 2) Coos Haak <chforth@hccnet.nl> - 2014-03-12 15:59 +0100
            Re: RfD: Interpret S\" (Version 2) Bernd Paysan <bernd.paysan@gmx.de> - 2014-03-12 19:43 +0100
          Re: RfD: Interpret S\" (Version 2) "Peter Knaggs" <pjk@bcs.org.uk> - 2014-03-13 18:55 +0000

csiph-web