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


Groups > comp.lang.forth > #25994

Re: Execution tokens for return stack manipulation

From Bernd Paysan <bernd.paysan@gmx.de>
Newsgroups comp.lang.forth
Subject Re: Execution tokens for return stack manipulation
Date 2013-09-24 16:14 +0200
Organization 1&1 Internet AG
Message-ID <l1s6nl$j33$1@online.de> (permalink)
References <l1q4vi$jdi$1@oravannahka.helsinki.fi> <D6KdncmsPd8EAN3PnZ2dnUVZ_vydnZ2d@supernews.com> <l1qbnn$bj5$1@online.de> <qaGdnUX4zJdk4dzPnZ2dnUVZ_gudnZ2d@supernews.com>

Show all headers | View raw


Andrew Haley wrote:
> Not necessarily:
> 
> 4.1.2 Ambiguous conditions
> 
> attempting to obtain the execution token, (e.g., with 6.1.0070 ',
> 6.1.1550 FIND, etc.) of a definition with undefined interpretation
> semantics;
> 
> So, you have to decide what your implementation does.

If we accept that

BL WORD FIND ... 0> IF EXECUTE ELSE COMPILE, THEN

is a standard way to define the compiler of a Forth system, then you ought 
to be able to get an xt of >R, at least with FIND. Either this xt is for 
EXECUTE (when it's immediate) or for COMPILE, when it's not. Regardless, you 
can obtain an xt with FIND, and when that is an xt from a word with 
execution semantics, I would think that it should be possible to execute it, 
even though it might not be useful in the outer interpreter.

I'm pretty much in agreement with Stephen Pelc that you shoul not need 
Spock's ears and Data's memory to deduce what the standard actually means. 
This should be much more straight-forward.  If you can't EXECUTE a word, the 
standard should not devine an execution semantics.

-- 
Bernd Paysan
"If you want it done right, you have to do it yourself"
http://bernd-paysan.de/

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


Thread

Execution tokens for return stack manipulation Lauri Alanko <la@iki.fi> - 2013-09-23 19:32 +0000
  Re: Execution tokens for return stack manipulation Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-09-23 14:59 -0500
    Re: Execution tokens for return stack manipulation Lauri Alanko <la@iki.fi> - 2013-09-23 20:21 +0000
      Re: Execution tokens for return stack manipulation Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-09-23 15:53 -0500
    Re: Execution tokens for return stack manipulation Bernd Paysan <bernd.paysan@gmx.de> - 2013-09-23 23:27 +0200
      Re: Execution tokens for return stack manipulation "Alex McDonald" <blog@rivadpm.com> - 2013-09-23 23:37 +0100
      Re: Execution tokens for return stack manipulation Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-09-24 06:52 -0500
        Re: Execution tokens for return stack manipulation anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-09-24 12:36 +0000
          Re: Execution tokens for return stack manipulation Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-09-24 12:10 -0500
            Re: Execution tokens for return stack manipulation Bernd Paysan <bernd.paysan@gmx.de> - 2013-09-24 22:22 +0200
        Re: Execution tokens for return stack manipulation Bernd Paysan <bernd.paysan@gmx.de> - 2013-09-24 16:14 +0200
          Re: Execution tokens for return stack manipulation Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-09-24 12:12 -0500
  Re: Execution tokens for return stack manipulation "Rod Pemberton" <dont_use_email@nohavenotit.com> - 2013-09-23 18:09 -0400
  Re: Execution tokens for return stack manipulation "Elizabeth D. Rather" <erather@forth.com> - 2013-09-23 12:40 -1000
    Re: Execution tokens for return stack manipulation Lauri Alanko <la@iki.fi> - 2013-09-23 22:43 +0000
      Re: Execution tokens for return stack manipulation Spam@ControlQ.com - 2013-09-24 01:38 -0400

csiph-web