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


Groups > comp.lang.forth > #134213

Re: 0 vs. translate-none

Date 2025-09-26 17:09 +0200
Subject Re: 0 vs. translate-none
Newsgroups comp.lang.forth
References (2 earlier) <nnd$7b6378a1$32698cf1@336f6ba211a040ac> <2025Sep23.190034@mips.complang.tuwien.ac.at> <nnd$7f84f1be$6f74abca@299308a742e8407e> <2025Sep24.084535@mips.complang.tuwien.ac.at> <68d4d191$1@news.ausics.net>
From Hans Bezemer <the.beez.speaks@gmail.com>
Message-ID <nnd$7638d54e$3b0eebd4@c7dadb0d33da7481> (permalink)
Organization KPN B.V.

Show all headers | View raw


On 25-09-2025 07:22, dxf wrote:

4.1.1 Implementation-defined options
The implementation-defined items in the following list represent 
characteristics and choices left to the discretion of the implementor, 
provided that the requirements of this Standard are met.

(HB) This is an extensional definition - it lists all elements in the 
set of "implementation defined options".

4.1.2 Ambiguous conditions
A system shall document the system action taken upon each of the general 
or specific ambiguous conditions identified in this Standard.

(HB) This is an extensional definition - it lists all elements in the 
set of "ambiguous conditions".

The fun part is that in ANS-Forth "undefined" is actually undefined. 
Using Merrian Webster: *not provided with a definition*

"not prescribe a specific behavior" equates "ambiguous condition" (2.1): 
a circumstance for which this Standard does not prescribe a specific 
behavior for Forth systems and programs. It's not related to "undefined".

If you invoke an "ambiguous condition" as a programmer, you cannot 
depend on any standard behavior- because there is none.

If you have to tackle an "ambiguous condition" as an implementer, the 
standard describes in 3.4.4 (Possible actions on an ambiguous condition) 
which action you can take. This is a limited list - so it's not 
"anything you wanna do".

E.g. "no loop parameters" is an ambiguous condition for Forth's +LOOP - 
and has to be tackled according to section 3.4.4. However +LOOP in 
interpretation mode is undefined. Since "undefined" is undefined, the 
possible actions that can be taken are also undefined. If you want to 
interpret that as "anything goes" I won't blame you ;-)

Show some nice ASCII art. Just a suggestion.

Hans Bezemer



> On 24/09/2025 4:45 pm, Anton Ertl wrote:
>> albert@spenarnc.xs4all.nl writes:
>>> This shows me how to Lift this defect. Rename LITERAL to (LIT) and
>>> define
>>> : LITERAL 'LIT , , ;  IMMEDIATE
>>
>> Looks good.
>>
>>> In the standard:
>>> LITERAL :
>>> Interpretation: Interpretation syntax for this word is undefined.
>>
>> Has ISO changed the text?  Forth-94 and Forth-2012 say:
>>
>> |Interpretation:
>> |Interpretation semantics for this word are undefined.
>>
>>> What if the standard says
>>>    execution of this word while in interpret mode is an ambiguous condition
>>
>> It does not, and that's a good thing.
> 
> "ambiguous condition:
> A circumstance for which this Standard does not prescribe a specific behavior
> for Forth systems and programs."
> 
> "undefined" and "not prescribe a specific behavior" seem much alike to me.
> Either way, the Standard is saying don't do this thing.  It's not as if
> they'd said nothing about it and left it up to you.
> 

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


Thread

0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-17 16:53 +0000
  Re: 0 vs. translate-none minforth <minforth@gmx.net> - 2025-09-19 12:24 +0200
    Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-19 15:45 +0000
      Re: 0 vs. translate-none peter <peter.noreply@tin.it> - 2025-09-19 19:39 +0200
        Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-20 07:25 +0000
          Re: 0 vs. translate-none peter <peter.noreply@tin.it> - 2025-09-20 10:34 +0200
            Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-20 16:08 +0000
              Re: 0 vs. translate-none peter <peter.noreply@tin.it> - 2025-09-20 19:08 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-20 17:57 +0000
                Re: 0 vs. translate-none peter <peter.noreply@tin.it> - 2025-09-20 20:55 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-21 12:33 +0000
                Re: 0 vs. translate-none peter <peter.noreply@tin.it> - 2025-09-21 18:39 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-23 17:25 +0000
                Re: 0 vs. translate-none peter <peter.noreply@tin.it> - 2025-09-23 22:25 +0200
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-24 01:15 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-24 06:26 +0000
            Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-21 10:37 +0200
              Re: 0 vs. translate-none minforth <minforth@gmx.net> - 2025-09-21 13:56 +0200
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-21 14:44 +0200
                Re: 0 vs. translate-none minforth <minforth@gmx.net> - 2025-09-21 17:46 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-23 17:23 +0000
                Re: 0 vs. translate-none minforth <minforth@gmx.net> - 2025-09-23 22:38 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-24 06:38 +0000
                Re: 0 vs. translate-none minforth <minforth@gmx.net> - 2025-09-24 09:39 +0200
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-24 10:28 +0200
                Re: 0 vs. translate-none minforth <minforth@gmx.net> - 2025-09-24 10:44 +0200
                Re: 0 vs. translate-none minforth <minforth@gmx.net> - 2025-09-24 10:36 +0200
              Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-21 12:50 +0000
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-21 21:39 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-22 06:56 +0000
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-22 10:09 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-22 08:39 +0000
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-22 23:03 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-23 17:00 +0000
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-24 00:41 +0200
                Re: 0 vs. translate-none dxf <dxforth@gmail.com> - 2025-09-24 13:57 +1000
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-24 06:45 +0000
                Re: 0 vs. translate-none dxf <dxforth@gmail.com> - 2025-09-25 15:22 +1000
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-25 06:36 +0000
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-25 13:00 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-29 05:54 +0000
                Re: 0 vs. translate-none albert@spenarnc.xs4all.nl - 2025-09-29 11:03 +0200
                Re: 0 vs. translate-none anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2025-09-29 16:27 +0000
                Re: 0 vs. translate-none dxf <dxforth@gmail.com> - 2025-09-26 10:56 +1000
                Re: 0 vs. translate-none Hans Bezemer <the.beez.speaks@gmail.com> - 2025-09-26 17:09 +0200
                Re: 0 vs. translate-none dxf <dxforth@gmail.com> - 2025-09-29 00:42 +1000
                Re: 0 vs. translate-none Hans Bezemer <the.beez.speaks@gmail.com> - 2025-09-30 18:15 +0200
                Re: 0 vs. translate-none dxf <dxforth@gmail.com> - 2025-10-01 14:10 +1000
                Re: 0 vs. translate-none Hans Bezemer <the.beez.speaks@gmail.com> - 2025-10-02 15:48 +0200
  Re: 0 vs. translate-none Ruvim <ruvim.pinka@gmail.com> - 2025-09-26 02:19 +0400
    Re: 0 vs. translate-none Ruvim <ruvim.pinka@gmail.com> - 2025-09-27 13:43 +0400

csiph-web