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


Groups > comp.lang.forth > #57272 > unrolled thread

[Random] Escape the trolls

Started byJulian Fondren <julian.fondren@gmail.com>
First post2017-04-13 22:46 -0700
Last post2017-04-14 21:24 -0400
Articles 20 on this page of 57 — 11 participants

Back to article view | Back to comp.lang.forth


Contents

  [Random] Escape the trolls Julian Fondren <julian.fondren@gmail.com> - 2017-04-13 22:46 -0700
    Re: [Random] Escape the trolls NN <november.nihal@gmail.com> - 2017-04-14 10:53 -0700
      Re: [Random] Escape the trolls Julian Fondren <julian.fondren@gmail.com> - 2017-04-14 11:26 -0700
        Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-14 15:30 -0400
          Re: [Random] Escape the trolls Julian Fondren <julian.fondren@gmail.com> - 2017-04-14 12:45 -0700
            Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-14 16:02 -0400
            Re: [Random] Escape the trolls NN <november.nihal@gmail.com> - 2017-04-14 13:13 -0700
              Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-14 16:18 -0400
                Re: [Random] Escape the trolls NN <november.nihal@gmail.com> - 2017-04-14 13:25 -0700
                  Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-14 16:49 -0400
                    Re: [Random] Escape the trolls Alex <alex@rivadpm.com> - 2017-04-14 21:59 +0100
                Re: [Random] Escape the trolls josv@planet.nl - 2017-04-15 04:09 -0700
                  Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-15 12:45 -0400
                  Re: [Random] Escape the trolls Coos Haak <htrofhc@gmail.com> - 2017-04-15 18:50 +0200
                    Re: [Random] Escape the trolls NN <november.nihal@gmail.com> - 2017-04-15 15:45 -0700
            Re: [Random] Escape the trolls hughaguilar96@gmail.com - 2017-04-14 14:46 -0700
              Re: [Random] Escape the trolls Julian Fondren <julian.fondren@gmail.com> - 2017-04-14 15:35 -0700
                Re: [Random] Escape the trolls hughaguilar96@gmail.com - 2017-04-14 16:24 -0700
                  Re: [Random] Escape the trolls Alex <alex@rivadpm.com> - 2017-04-15 00:34 +0100
                    Re: [Random] Escape the trolls Alex <alex@rivadpm.com> - 2017-04-15 00:36 +0100
                    Re: [Random] Escape the trolls hughaguilar96@gmail.com - 2017-04-14 20:58 -0700
                      Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-15 00:24 -0400
                        Re: [Random] Escape the trolls hughaguilar96@gmail.com - 2017-04-14 21:40 -0700
                          Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-15 02:32 -0400
                            Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-15 07:50 +0000
                              Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-15 08:15 +0000
                                Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-15 13:10 -0400
                                  Re: [Random] Escape the trolls Coos Haak <htrofhc@gmail.com> - 2017-04-15 19:27 +0200
                                    Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-15 14:25 -0400
                                      Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-17 14:05 +0000
                                  Re: [Random] Escape the trolls "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-16 01:42 +0000
                                    Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-15 21:51 -0400
                                      Re: [Random] Escape the trolls "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-16 02:10 +0000
                                        Re: [Random] Escape the trolls Coos Haak <htrofhc@gmail.com> - 2017-04-16 14:29 +0200
                                          Re: [Random] Escape the trolls "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-16 13:58 +0000
                                        Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-16 16:11 +0000
                                          Re: [Random] Escape the trolls "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-16 22:18 +0000
                                            Re: [Random] Escape the trolls Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-04-17 07:54 +0100
                                              Re: [Random] Escape the trolls "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-17 23:32 +0000
                                              Re: [Random] Escape the trolls "Rudy Velthuis" <newsgroups@rvelthuis.de> - 2017-04-17 23:33 +0000
                      Re: [Random] Escape the trolls Julian Fondren <julian.fondren@gmail.com> - 2017-04-14 22:33 -0700
                        Re: [Random] Escape the trolls Julian Fondren <julian.fondren@gmail.com> - 2017-04-14 22:52 -0700
                      Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-15 07:52 +0000
                        Re: [Random] Escape the trolls Alex <alex@rivadpm.com> - 2017-04-15 11:20 +0100
                          Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-15 11:53 +0000
                            Re: [Random] Escape the trolls Alex <alex@rivadpm.com> - 2017-04-15 19:10 +0100
                              Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-17 14:19 +0000
                            Re: [Random] Escape the trolls Bernd Linsel <bl1@gmx.com> - 2017-04-15 20:21 +0200
                              Re: [Random] Escape the trolls Alex <alex@rivadpm.com> - 2017-04-15 20:33 +0100
                                Re: [Random] Escape the trolls Bernd Linsel <bl1@gmx.com> - 2017-04-16 11:50 +0200
                                  Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-16 14:22 +0000
                              Re: [Random] Escape the trolls anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-04-16 14:47 +0000
                        Re: [Random] Escape the trolls hughaguilar96@gmail.com - 2017-04-15 16:55 -0700
                          Re: [Random] Escape the trolls hughaguilar96@gmail.com - 2017-04-15 17:03 -0700
                      Re: [Random] Escape the trolls Alex <alex@rivadpm.com> - 2017-04-15 11:37 +0100
                  Re: [Random] Escape the trolls Julian Fondren <julian.fondren@gmail.com> - 2017-04-14 16:51 -0700
                  Re: [Random] Escape the trolls rickman <gnuarm@gmail.com> - 2017-04-14 21:24 -0400

Page 2 of 3 — ← Prev page 1 [2] 3  Next page →


#57345

Fromhughaguilar96@gmail.com
Date2017-04-14 20:58 -0700
Message-ID<9b5a1faa-dfa6-470e-8797-ce2e4f117e7d@googlegroups.com>
In reply to#57334
On Friday, April 14, 2017 at 4:34:40 PM UTC-7, Alex wrote:
> On 4/15/2017 00:24, hughaguilar96@gmail.com wrote:
> > On Friday, April 14, 2017 at 3:35:55 PM UTC-7, Julian Fondren wrote:
> >> On Friday, April 14, 2017 at 4:46:18 PM UTC-5, hughag...@gmail.com
> >> wrote:
> >>> These ANS-Forth experts seem to know almost nothing about
> >>> ANS-Forth! Code that is trivial to write in ANS-Forth they expect
> >>> the compiler-writer to provide to them as a non-standard
> >>> extension.
> >> 
> >> S\" is a very widely implemented standard extension that is also 
> >> pretty easy to implement on the Forths I've found that lack it.
> > 
> > It may be easy to implement, but you haven't done so --- you are
> > waiting for somebody smart to implement it for you.
> > 
> > I don't know what S\" does --- if anybody knows what this does and
> > can describe it, I will try to write it --- if anybody has already
> > written it, and their code is ANS-Forth, I'll put it in the
> > novice-package.
> > 
> 
> Here's a challenge. Read the spec & write it without having others do 
> your homework.
> 
> http://forth-standard.org/standard/file/Sq
> 
> See if you can do it without requiring 2500 lines of novice package to 
> be included first. We'll wait.

You'll wait forever for me to write an ANS-Forth program that doesn't require NOVICE.4TH to be already loaded.

I wrote the code, but I require both NOVICE.4TH and STRING-STACK.4TH (the code is actually in STRING-STACK.4TH).

1.) I read that Forth-200x description of S\" and found this bizarre restriction:
"A program shall not alter the returned string."
I don't know why they have that restriction, and I certainly don't. Like everything in STRING-STACK.4TH my FIX\$ uses the string-stack. I also have S\" that is like the Forth-200x S\" in that it parses from the input stream, but it returns a string in the heap.

2.) They also said this:
"An ambiguous condition exists if a \ is placed before any character, other than those defined in here."
They sure do love the term "ambiguous condition." I just abort with an error message, because this is an error.

3.) I glanced over Julien Fondren's code and saw that it doesn't work in interpretive mode. That is another weird restriction that I don't have.

4.) I don't support \" because I have \q for that. It seems confusing to have \" inside of a " delimited string --- I suppose I could write a smart PARSE that gets the whole string --- I didn't bother with this.

5.) My tests are case-insensitive --- so \q and \Q are the same.

Here is the code:
-------------------------------------------------------------------------

\ ********
\ ******** S\"
\ ******** described here: http://forth-standard.org/standard/core/Seq
\ ******** The Forth-200x version has this problem: "A program shall not alter the returned string."
\ ******** My version uses the string-stack, so there is no such problem.
\ ******** I don't support \" though, as I have \q for that.
\ ******** My codes are case-insensitive, so \q and \Q are the same.
\ ********

: hexchar>n ( char -- n )
    s" 0123456789ABCDEF" >$
    ifindc$  dup -1 = abort" *** HEXCHAR>N given a char that wasn't hex ***" 
    ;

-3
    enum last-\         \ the last char was \
    enum last-\x        \ the last chars were \x
    enum last-done      \ the last chars are irrelevent 
drop

\ The LAST parameter given to <S\"> is one of the above enums (all negative), or is the hexadecimal value of the last char.

: <fix\$> { last char-adr | datum lc-datum -- last done? }      \ DONE? is always FALSE
    char-adr c@         to datum
    datum char-lower    to lc-datum
    last last-done = if
        [char] \  lc-datum = if                                 last-\      false exit then     \ backslash
        datum char+cstr  last-done   false exit                                             \ raw char
        then
    last last-\ = if    \ these should all be lower-case because we compare to LC-DATUM
        [char] a  lc-datum = if   7 char+cstr                   last-done   false exit then     \ bell
        [char] b  lc-datum = if   8 char+cstr                   last-done   false exit then     \ backspace
        [char] e  lc-datum = if  27 char+cstr                   last-done   false exit then     \ escape
        [char] e  lc-datum = if  27 char+cstr                   last-done   false exit then     \ escape
        [char] f  lc-datum = if  12 char+cstr                   last-done   false exit then     \ FF (form feed)
        [char] l  lc-datum = if  10 char+cstr                   last-done   false exit then     \ LF (line feed)
        [char] m  lc-datum = if  13 char+cstr  10 char+cstr     last-done   false exit then     \ CR/LF
        [char] n  lc-datum = if  13 char+cstr  10 char+cstr     last-done   false exit then     \ CR/LF
        [char] q  lc-datum = if  34 char+cstr                   last-done   false exit then     \ double-quote
        [char] r  lc-datum = if  13 char+cstr                   last-done   false exit then     \ CR (carriage return)
        [char] t  lc-datum = if   9 char+cstr                   last-done   false exit then     \ HT (horizontal tab)
        [char] v  lc-datum = if  11 char+cstr                   last-done   false exit then     \ VT (vertical tab)
        [char] z  lc-datum = if   0 char+cstr                   last-done   false exit then     \ null
        [char] \  lc-datum = if  92 char+cstr                   last-done   false exit then     \ back-slash
        [char] x  lc-datum = if                                 last-\x     false exit then     \ start hex
        true abort" *** S\quote given \ with an illegal code after the \ char ***"
        then
    last last-\x = if  datum hexchar>n  false exit then
    \ LAST is the hex value of the high digit        
    last 4 lshift  datum hexchar>n +  char+cstr             last-done   false exit ;
    
\ I don't support \" because I have \q for that.
\ It is confusing to have \" inside of a string that is " delimited (and S\" is " delimited).
\ I could write a smart version of PARSE that gets the whole string, but that would complicate the code unduly.    
    
: fix\$ ( -- )          \ string: str -- new-str
    <cstr  last-done ['] <fix\$> forward$ 2drop  cstr>  count mut>$ ;
    
: s\" ( -- adr cnt )    \ stream: string        \ this returns a string in the heap that will need DEALLOC eventually
    [char] " parse  mut>$
    fix\$  $> ;

[toc] | [prev] | [next] | [standalone]


#57346

Fromrickman <gnuarm@gmail.com>
Date2017-04-15 00:24 -0400
Message-ID<ocs73e$h5q$1@dont-email.me>
In reply to#57345
On 4/14/2017 11:58 PM, hughaguilar96@gmail.com wrote:
>
> 1.) I read that Forth-200x description of S\" and found this bizarre
> restriction: "A program shall not alter the returned string." I don't
> know why they have that restriction, and I certainly don't. Like
> everything in STRING-STACK.4TH my FIX\$ uses the string-stack. I also
> have S\" that is like the Forth-200x S\" in that it parses from the
> input stream, but it returns a string in the heap.

This is so simple even a non-Forth programmer like me knows the answer. 
The restriction of not altering the string makes it possible for the 
string to be in non-volatile memory.  :)

Yes, your code is written with a certain mindset which precludes a lot 
of systems.


> 2.) They also said this: "An ambiguous condition exists if a \ is
> placed before any character, other than those defined in here." They
> sure do love the term "ambiguous condition." I just abort with an
> error message, because this is an error.

That would be compatible with the ANS standard.  Any you thought you 
couldn't write ANS compatible code, didn't you?


> 3.) I glanced over Julien Fondren's code and saw that it doesn't work
> in interpretive mode. That is another weird restriction that I don't
> have.
>
> 4.) I don't support \" because I have \q for that. It seems confusing
> to have \" inside of a " delimited string --- I suppose I could write
> a smart PARSE that gets the whole string --- I didn't bother with
> this.

My god!  You live in a sheltered world.  Lots of languages support the 
quote character in quote delimited strings.  I can't think of one that 
doesn't, but that's not saying a lot coming from a rank novice.


> 5.) My tests are case-insensitive --- so \q and \Q are the same.
>
> Here is the code:

So why do you have such a hard time understanding simple specifications 
that even a rank novice such as myself can figure out?

-- 

Rick C

[toc] | [prev] | [next] | [standalone]


#57347

Fromhughaguilar96@gmail.com
Date2017-04-14 21:40 -0700
Message-ID<e9fed02d-1209-467d-8b04-751d5431f8d4@googlegroups.com>
In reply to#57346
On Friday, April 14, 2017 at 9:24:09 PM UTC-7, rickman wrote:
> On 4/14/2017 11:58 PM, hughaguilar96@gmail.com wrote:
> >
> > 1.) I read that Forth-200x description of S\" and found this bizarre
> > restriction: "A program shall not alter the returned string." I don't
> > know why they have that restriction, and I certainly don't. Like
> > everything in STRING-STACK.4TH my FIX\$ uses the string-stack. I also
> > have S\" that is like the Forth-200x S\" in that it parses from the
> > input stream, but it returns a string in the heap.
> 
> This is so simple even a non-Forth programmer like me knows the answer. 
> The restriction of not altering the string makes it possible for the 
> string to be in non-volatile memory.  :)
> 
> Yes, your code is written with a certain mindset which precludes a lot 
> of systems.

You are saying that S\" only works at compile-time? I didn't read about that 
restriction anywhere.

[toc] | [prev] | [next] | [standalone]


#57350

Fromrickman <gnuarm@gmail.com>
Date2017-04-15 02:32 -0400
Message-ID<ocseji$uo$1@dont-email.me>
In reply to#57347
On 4/15/2017 12:40 AM, hughaguilar96@gmail.com wrote:
> On Friday, April 14, 2017 at 9:24:09 PM UTC-7, rickman wrote:
>> On 4/14/2017 11:58 PM, hughaguilar96@gmail.com wrote:
>>>
>>> 1.) I read that Forth-200x description of S\" and found this bizarre
>>> restriction: "A program shall not alter the returned string." I don't
>>> know why they have that restriction, and I certainly don't. Like
>>> everything in STRING-STACK.4TH my FIX\$ uses the string-stack. I also
>>> have S\" that is like the Forth-200x S\" in that it parses from the
>>> input stream, but it returns a string in the heap.
>>
>> This is so simple even a non-Forth programmer like me knows the answer.
>> The restriction of not altering the string makes it possible for the
>> string to be in non-volatile memory.  :)
>>
>> Yes, your code is written with a certain mindset which precludes a lot
>> of systems.
>
> You are saying that S\" only works at compile-time? I didn't read about that
> restriction anywhere.

What did you read?  You clearly didn't read the section of the ANS spec 
I posted.  Here is the relevant part again...

"Interpretation: Interpretation semantics for this word are undefined."

-- 

Rick C

[toc] | [prev] | [next] | [standalone]


#57352

Fromanton@mips.complang.tuwien.ac.at (Anton Ertl)
Date2017-04-15 07:50 +0000
Message-ID<2017Apr15.095051@mips.complang.tuwien.ac.at>
In reply to#57350
rickman <gnuarm@gmail.com> writes:
[On S\"]
>"Interpretation: Interpretation semantics for this word are undefined."

That's probably a bug, but yes, that's Forth-2012.

- anton
-- 
M. Anton Ertl  http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
     New standard: http://www.forth200x.org/forth200x.html
   EuroForth 2016: http://www.euroforth.org/ef16/

[toc] | [prev] | [next] | [standalone]


#57355

Fromanton@mips.complang.tuwien.ac.at (Anton Ertl)
Date2017-04-15 08:15 +0000
Message-ID<2017Apr15.101540@mips.complang.tuwien.ac.at>
In reply to#57352
anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
>rickman <gnuarm@gmail.com> writes:
>[On S\"]
>>"Interpretation: Interpretation semantics for this word are undefined."
>
>That's probably a bug, but yes, that's Forth-2012.

Actually, the bug is that the references in the SEE section are wrong:
It should say:

SEE: 3.4.1 Parsing, 11.6.2.2266 S\" 

And 11.6.2.2266 defines the interpretation semantics.

- anton
-- 
M. Anton Ertl  http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
     New standard: http://www.forth200x.org/forth200x.html
   EuroForth 2016: http://www.euroforth.org/ef16/

[toc] | [prev] | [next] | [standalone]


#57378

Fromrickman <gnuarm@gmail.com>
Date2017-04-15 13:10 -0400
Message-ID<octjvl$k4b$1@dont-email.me>
In reply to#57355
On 4/15/2017 4:15 AM, Anton Ertl wrote:
> anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
>> rickman <gnuarm@gmail.com> writes:
>> [On S\"]
>>> "Interpretation: Interpretation semantics for this word are undefined."
>>
>> That's probably a bug, but yes, that's Forth-2012.
>
> Actually, the bug is that the references in the SEE section are wrong:
> It should say:
>
> SEE: 3.4.1 Parsing, 11.6.2.2266 S\"
>
> And 11.6.2.2266 defines the interpretation semantics.

Something seems to be wrong.  I don't find section 11.6.2.2266 in the 
document.  I'm looking at "Forth 2012 RC2", 13 th November, 2013.  I 
don't find anything in the appendix about S\", only in earlier sections 
and in a list of words added.

Am I looking at the right document?

-- 

Rick C

[toc] | [prev] | [next] | [standalone]


#57380

FromCoos Haak <htrofhc@gmail.com>
Date2017-04-15 19:27 +0200
Message-ID<dtjp8xgwy6r8$.ceozj0eimj01$.dlg@40tude.net>
In reply to#57378
Op Sat, 15 Apr 2017 13:10:06 -0400 schreef rickman:

> On 4/15/2017 4:15 AM, Anton Ertl wrote:
>> anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
>>> rickman <gnuarm@gmail.com> writes:
>>> [On S\"]
>>>> "Interpretation: Interpretation semantics for this word are undefined."
>>>
>>> That's probably a bug, but yes, that's Forth-2012.
>>
>> Actually, the bug is that the references in the SEE section are wrong:
>> It should say:
>>
>> SEE: 3.4.1 Parsing, 11.6.2.2266 S\"
>>
>> And 11.6.2.2266 defines the interpretation semantics.
> 
> Something seems to be wrong.  I don't find section 11.6.2.2266 in the 
> document.  I'm looking at "Forth 2012 RC2", 13 th November, 2013.  I 
> don't find anything in the appendix about S\", only in earlier sections 
> and in a list of words added.
> 
> Am I looking at the right document?

10 november 2014 has it.

groet Coos

[toc] | [prev] | [next] | [standalone]


#57384

Fromrickman <gnuarm@gmail.com>
Date2017-04-15 14:25 -0400
Message-ID<octode$45p$1@dont-email.me>
In reply to#57380
On 4/15/2017 1:27 PM, Coos Haak wrote:
> Op Sat, 15 Apr 2017 13:10:06 -0400 schreef rickman:
>
>> On 4/15/2017 4:15 AM, Anton Ertl wrote:
>>> anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
>>>> rickman <gnuarm@gmail.com> writes:
>>>> [On S\"]
>>>>> "Interpretation: Interpretation semantics for this word are undefined."
>>>>
>>>> That's probably a bug, but yes, that's Forth-2012.
>>>
>>> Actually, the bug is that the references in the SEE section are wrong:
>>> It should say:
>>>
>>> SEE: 3.4.1 Parsing, 11.6.2.2266 S\"
>>>
>>> And 11.6.2.2266 defines the interpretation semantics.
>>
>> Something seems to be wrong.  I don't find section 11.6.2.2266 in the
>> document.  I'm looking at "Forth 2012 RC2", 13 th November, 2013.  I
>> don't find anything in the appendix about S\", only in earlier sections
>> and in a list of words added.
>>
>> Am I looking at the right document?
>
> 10 november 2014 has it.

Jeeze, I was focusing on the day and ignoring the year in the copies I 
found on the web.  Ok, I'm up to date now.

So I see S\" is in File Ext as well where it says it can be used in 
interpretive mode following the pattern of S" .  So the core function 
allows for use in definitions which are stored in non-volatile memory 
while the File Ext version can be used interpretatively because they are 
RAM based?

-- 

Rick C

[toc] | [prev] | [next] | [standalone]


#57489

Fromanton@mips.complang.tuwien.ac.at (Anton Ertl)
Date2017-04-17 14:05 +0000
Message-ID<2017Apr17.160536@mips.complang.tuwien.ac.at>
In reply to#57384
rickman <gnuarm@gmail.com> writes:
[S\"]
>So the core function 
>allows for use in definitions which are stored in non-volatile memory 
>while the File Ext version can be used interpretatively because they are 
>RAM based?

Definitions may also be stored in writable RAM; your program is still
not allowed to modify it.  The result of an interpretive S\" may be
stored in non-writable memory.  For S", the scenario could look like
this: INCLUDED mmaps the file containing the source code read-only,
and that file is kept around for the rest of the session; REFILL and
PARSE-NAME/PARSE go through it.  Because interpretive S" knows that
the string returned by PARSE lives for the rest of the session, it is
implemted just as:

: S"-int '"' parse ;

That would require keeping the typed-in lines around for the rest of
the session, too.  And it does not fit interpretive S\", because S\"
performs \-sequence replacement.  Still, a system that is anal about
that sentence in the standard might make the interpretive S\" buffer
read-only once the translation is complete.

- anton
-- 
M. Anton Ertl  http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
     New standard: http://www.forth200x.org/forth200x.html
   EuroForth 2016: http://www.euroforth.org/ef16/

[toc] | [prev] | [next] | [standalone]


#57412

From"Rudy Velthuis" <newsgroups@rvelthuis.de>
Date2017-04-16 01:42 +0000
Message-ID<xn0kosdw43552l5004@nntp.aioe.org>
In reply to#57378
rickman wrote:

> > SEE: 3.4.1 Parsing, 11.6.2.2266 S\"
> > 
> > And 11.6.2.2266 defines the interpretation semantics.
> 
> Something seems to be wrong.  I don't find section 11.6.2.2266 in the
> document. 

https://forth-standard.org/standard/file/Seq

These interpretation semantics seem to be an extension for the
File-Access wordset, probably to be able to define certain file names
(e.g. with quotes in or around them).

-- 
Rudy Velthuis        http://www.rvelthuis.de

"Police arrested two kids yesterday, one was drinking battery 
 acid, the other was eating fireworks. They charged one and let 
 the other one off." -- Tommy Cooper

[toc] | [prev] | [next] | [standalone]


#57414

Fromrickman <gnuarm@gmail.com>
Date2017-04-15 21:51 -0400
Message-ID<ocuigv$h30$2@dont-email.me>
In reply to#57412
On 4/15/2017 9:42 PM, Rudy Velthuis wrote:
> rickman wrote:
>
>>> SEE: 3.4.1 Parsing, 11.6.2.2266 S\"
>>>
>>> And 11.6.2.2266 defines the interpretation semantics.
>>
>> Something seems to be wrong.  I don't find section 11.6.2.2266 in the
>> document.
>
> https://forth-standard.org/standard/file/Seq
>
> These interpretation semantics seem to be an extension for the
> File-Access wordset, probably to be able to define certain file names
> (e.g. with quotes in or around them).

I was working from a year too old copy of the standard.  I've got the 
more recent now.

-- 

Rick C

[toc] | [prev] | [next] | [standalone]


#57415

From"Rudy Velthuis" <newsgroups@rvelthuis.de>
Date2017-04-16 02:10 +0000
Message-ID<xn0koseo6364h69006@nntp.aioe.org>
In reply to#57414
rickman wrote:

> > > Something seems to be wrong.  I don't find section 11.6.2.2266 in
> > > the document.
> > 
> > https://forth-standard.org/standard/file/Seq
> > 
> > These interpretation semantics seem to be an extension for the
> > File-Access wordset, probably to be able to define certain file
> > names (e.g. with quotes in or around them).
> 
> I was working from a year too old copy of the standard.  I've got the
> more recent now.

I don't have any. 

I'm more or less a newb (in Forth, although I already wrote some code
in Acornsoft Forth in 1983 -- I am not a newb in programming), trying
to write a simple Forth in assembler (as a pet asm project).

Is the online version of the standard up-to-date?

-- 
Rudy Velthuis        http://www.rvelthuis.de

"The concept is interesting and well-formed, but in order to 
 earn better than a 'C', the idea must be feasible."
 -- A Yale University management professor in response to student
    Fred Smith's paper proposing reliable overnight delivery 
    service (Smith went on to found Federal Express Corp.)

[toc] | [prev] | [next] | [standalone]


#57437

FromCoos Haak <htrofhc@gmail.com>
Date2017-04-16 14:29 +0200
Message-ID<pakpo9xoaa0r$.nkhk5qy7kjxy$.dlg@40tude.net>
In reply to#57415
Op Sun, 16 Apr 2017 02:10:10 +0000 (UTC) schreef Rudy Velthuis:

> rickman wrote:
> 
>>> > Something seems to be wrong.  I don't find section 11.6.2.2266 in
>>> > the document.
>>> 
>>> https://forth-standard.org/standard/file/Seq
>>> 
>>> These interpretation semantics seem to be an extension for the
>>> File-Access wordset, probably to be able to define certain file
>>> names (e.g. with quotes in or around them).
>> 
>> I was working from a year too old copy of the standard.  I've got the
>> more recent now.
> 
> I don't have any. 
> 
> I'm more or less a newb (in Forth, although I already wrote some code
> in Acornsoft Forth in 1983 -- I am not a newb in programming), trying
> to write a simple Forth in assembler (as a pet asm project).
> 
> Is the online version of the standard up-to-date?

Here it is:
http://www.forth200x.org/documents/forth-2012.pdf

groet Coos

[toc] | [prev] | [next] | [standalone]


#57440

From"Rudy Velthuis" <newsgroups@rvelthuis.de>
Date2017-04-16 13:58 +0000
Message-ID<xn0kosx8r3kem2e004@nntp.aioe.org>
In reply to#57437
Coos Haak wrote:

> Op Sun, 16 Apr 2017 02:10:10 +0000 (UTC) schreef Rudy Velthuis:
> 
> > rickman wrote:
> > 
> >>> > Something seems to be wrong.  I don't find section 11.6.2.2266
> in >>> > the document.
> >>> 
> >>> https://forth-standard.org/standard/file/Seq
> >>> 
> >>> These interpretation semantics seem to be an extension for the
> >>> File-Access wordset, probably to be able to define certain file
> >>> names (e.g. with quotes in or around them).
> >> 
> >> I was working from a year too old copy of the standard.  I've got
> the >> more recent now.
> > 
> > I don't have any. 
> > 
> > I'm more or less a newb (in Forth, although I already wrote some
> > code in Acornsoft Forth in 1983 -- I am not a newb in programming),
> > trying to write a simple Forth in assembler (as a pet asm project).
> > 
> > Is the online version of the standard up-to-date?
> 
> Here it is:
> http://www.forth200x.org/documents/forth-2012.pdf
> 
> groet Coos

Ah, thanks!

Lots of Dutch people here, I see.

-- 
Rudy Velthuis        http://www.rvelthuis.de

"UNIX is simple. It just takes a genius to understand its
 simplicity." -- Dennis Ritchie

[toc] | [prev] | [next] | [standalone]


#57451

Fromanton@mips.complang.tuwien.ac.at (Anton Ertl)
Date2017-04-16 16:11 +0000
Message-ID<2017Apr16.181132@mips.complang.tuwien.ac.at>
In reply to#57415
"Rudy Velthuis" <newsgroups@rvelthuis.de> writes:
>Is the online version of the standard up-to-date?

Forth-2012:

PDF version: http://www.forth200x.org/documents/forth-2012.pdf
Web 2.0 version: http://forth-standard.org/standard/words

If you are interested in the drafts of the next standard, look at
<http://www.forth200x.org/documents/>.

- anton
-- 
M. Anton Ertl  http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
     New standard: http://www.forth200x.org/forth200x.html
   EuroForth 2016: http://www.euroforth.org/ef16/

[toc] | [prev] | [next] | [standalone]


#57462

From"Rudy Velthuis" <newsgroups@rvelthuis.de>
Date2017-04-16 22:18 +0000
Message-ID<xn0kotn4d427bnn001@nntp.aioe.org>
In reply to#57451
Anton Ertl wrote:

> "Rudy Velthuis" <newsgroups@rvelthuis.de> writes:
> > Is the online version of the standard up-to-date?
> 
> Forth-2012:
> 
> PDF version: http://www.forth200x.org/documents/forth-2012.pdf
> Web 2.0 version: http://forth-standard.org/standard/words
> 
> If you are interested in the drafts of the next standard, look at
> <http://www.forth200x.org/documents/>.

Thanks. I am trying to make my hobby Forth (RudyForth ;-) as compliant
as I can. Having such data is very useful.

-- 
Rudy Velthuis        http://www.rvelthuis.de

"You can't wake a person who is pretending to be asleep."
 -- Native Proverb

[toc] | [prev] | [next] | [standalone]


#57478

FromGerry Jackson <gerry@jackson9000.fsnet.co.uk>
Date2017-04-17 07:54 +0100
Message-ID<od1olr$p3j$1@dont-email.me>
In reply to#57462
On 16/04/2017 23:18, Rudy Velthuis wrote:
> Anton Ertl wrote:
>
>> "Rudy Velthuis" <newsgroups@rvelthuis.de> writes:
>>> Is the online version of the standard up-to-date?
>>
>> Forth-2012:
>>
>> PDF version: http://www.forth200x.org/documents/forth-2012.pdf
>> Web 2.0 version: http://forth-standard.org/standard/words
>>
>> If you are interested in the drafts of the next standard, look at
>> <http://www.forth200x.org/documents/>.
>
> Thanks. I am trying to make my hobby Forth (RudyForth ;-) as compliant
> as I can. Having such data is very useful.
>
In case you are not aware of it, this test suite could assist making 
your system compliant.

https://github.com/gerryjackson/forth2012-test-suite

-- 
Gerry

[toc] | [prev] | [next] | [standalone]


#57509

From"Rudy Velthuis" <newsgroups@rvelthuis.de>
Date2017-04-17 23:32 +0000
Message-ID<xn0kov3mc5aibqj004@nntp.aioe.org>
In reply to#57478
Gerry Jackson wrote:

> On 16/04/2017 23:18, Rudy Velthuis wrote:
> > Anton Ertl wrote:
> > 
> >>"Rudy Velthuis" <newsgroups@rvelthuis.de> writes:
> > > > Is the online version of the standard up-to-date?
> > > 
> > > Forth-2012:
> > > 
> > > PDF version: http://www.forth200x.org/documents/forth-2012.pdf
> > > Web 2.0 version: http://forth-standard.org/standard/words
> > > 
> > > If you are interested in the drafts of the next standard, look at
> > > <http://www.forth200x.org/documents/>.
> > 
> > Thanks. I am trying to make my hobby Forth (RudyForth ;-) as
> > compliant as I can. Having such data is very useful.
> > 
> In case you are not aware of it, this test suite could assist making
> your system compliant.
> 
> https://github.com/gerryjackson/forth2012-test-suite

I already downloaded that a while ago. But I can't use it yet. My Forth
is not finished yet, and it can't include or require or evaluate yet.
<g>

-- 
Rudy Velthuis        http://www.rvelthuis.de

"Opportunities multiply as they are seized." -- Sun Tzu

[toc] | [prev] | [next] | [standalone]


#57510

From"Rudy Velthuis" <newsgroups@rvelthuis.de>
Date2017-04-17 23:33 +0000
Message-ID<xn0kov3mu5aj0h1005@nntp.aioe.org>
In reply to#57478
Gerry Jackson wrote:

> In case you are not aware of it, this test suite could assist making
> your system compliant.
> 
> https://github.com/gerryjackson/forth2012-test-suite

Thanks, BTW, I forgot that in my previous post.

-- 
Rudy Velthuis        http://www.rvelthuis.de

"She was already learning that if you ignore the rules people will, 
 half the time, quietly rewrite them so that they don't apply to you."
 -- Terry Pratchett (Equal Rites)

[toc] | [prev] | [next] | [standalone]


Page 2 of 3 — ← Prev page 1 [2] 3  Next page →

Back to top | Article view | comp.lang.forth


csiph-web