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


Groups > comp.lang.forth > #48467

Re: Implementation of LEAVE?

From anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups comp.lang.forth
Subject Re: Implementation of LEAVE?
Date 2016-06-23 11:53 +0000
Organization Institut fuer Computersprachen, Technische Universitaet Wien
Message-ID <2016Jun23.135341@mips.complang.tuwien.ac.at> (permalink)
References <cf94fe95-4400-43db-8981-0c24d63e0749@googlegroups.com> <nqmdnS0MzK96IPbKnZ2dnUU7-X_NnZ2d@supernews.com>

Show all headers | View raw


Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>Then, when compiling LEAVE, search down the stack for the tag left by
>DO.  Insert an address and a leave tag, and restore all the stack
>items on top.  Then the compile-time action of LOOP pops as many LEAVE
>addresses as it finds on the stack and resolves them.

Not really in line with the standard compilation stack effect of
LEAVE, which is ( -- ), but it would probably work.  I don't find it
particularly simple, however, rather to the contrary.

- 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/

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


Thread

Implementation of LEAVE? alexinbeijing@gmail.com - 2016-06-23 02:01 -0700
  Re: Implementation of LEAVE? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-23 05:45 -0500
    Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-23 11:53 +0000
      Re: Implementation of LEAVE? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-23 12:06 -0500
        Re: Implementation of LEAVE? Paul Rubin <no.email@nospam.invalid> - 2016-06-23 12:19 -0700
          Re: Implementation of LEAVE? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-24 03:05 -0500
            Re: Implementation of LEAVE? JennyB <jennybrien@googlemail.com> - 2016-06-24 02:14 -0700
              Re: Implementation of LEAVE? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-25 04:19 -0500
                Re: Implementation of LEAVE? JennyB <jennybrien@googlemail.com> - 2016-06-25 03:38 -0700
                Re: Implementation of LEAVE? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-25 11:00 -0500
                Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-25 17:34 +0000
                Re: Implementation of LEAVE? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-26 12:14 -0500
                Re: Implementation of LEAVE? hughaguilar96@gmail.com - 2016-06-26 16:36 -0700
                Re: Implementation of LEAVE? hughaguilar96@gmail.com - 2016-06-26 17:57 -0700
                Re: Implementation of LEAVE? Alex McDonald <alex@rivadpm.com> - 2016-06-27 14:16 +0100
                Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-27 16:12 +0000
                Re: Implementation of LEAVE? Alex McDonald <alex@rivadpm.com> - 2016-06-27 22:31 +0100
                Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-27 14:21 +0000
                Re: Implementation of LEAVE? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2016-06-27 11:05 -0500
              Re: Implementation of LEAVE? JennyB <jennybrien@googlemail.com> - 2016-06-25 03:49 -0700
            Re: Implementation of LEAVE? JennyB <jennybrien@googlemail.com> - 2016-06-24 08:45 -0700
            Re: Implementation of LEAVE? JennyB <jennybrien@googlemail.com> - 2016-06-24 02:33 -0700
        Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-24 16:23 +0000
  Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-23 11:43 +0000
  Re: Implementation of LEAVE? alexinbeijing@gmail.com - 2016-06-24 11:41 -0700
    Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-25 05:18 +0000
      Re: Implementation of LEAVE? Brad Eckert <hwfwguy@gmail.com> - 2016-06-27 17:45 -0700
        Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-28 06:14 +0000
  Re: Implementation of LEAVE? Brad Eckert <hwfwguy@gmail.com> - 2016-06-24 15:30 -0700
  Re: Implementation of LEAVE? minforth@arcor.de - 2016-06-24 04:36 -0700
  Re: Implementation of LEAVE? Mark Wills <markwills1970@gmail.com> - 2016-06-25 07:51 -0700
    Re: Implementation of LEAVE? Coos Haak <chforth@hccnet.nl> - 2016-06-26 00:37 +0200
  Re: Implementation of LEAVE? Mark Wills <markwills1970@gmail.com> - 2016-06-25 08:29 -0700
  Re: Implementation of LEAVE? "HAA" <someone@microsoft.com> - 2016-06-26 15:31 +1000
    Re: Implementation of LEAVE? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2016-06-26 10:16 +0000
      Re: Implementation of LEAVE? "HAA" <someone@microsoft.com> - 2016-06-27 22:38 +1000
  Re: Implementation of LEAVE? Alex Dowad <alexinbeijing@gmail.com> - 2016-06-26 13:53 -0700

csiph-web