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


Groups > comp.lang.forth > #132159

Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!]

From anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups comp.lang.forth
Subject Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!]
Date 2024-09-14 06:19 +0000
Organization Institut fuer Computersprachen, Technische Universitaet Wien
Message-ID <2024Sep14.081952@mips.complang.tuwien.ac.at> (permalink)
References (9 earlier) <66e37b37$1@news.ausics.net> <05fd5a0056972ac60f43598f23a170ad@www.novabbs.com> <66e40a42$1@news.ausics.net> <2024Sep13.200734@mips.complang.tuwien.ac.at> <66e4f98b$1@news.ausics.net>

Show all headers | View raw


dxf <dxforth@gmail.com> writes:
>On 14/09/2024 4:07 am, Anton Ertl wrote:
>> Where can I find claims about better performance?  All I have read is
>> claims about worse performance.  
>
>'Eliminate stack juggling' sounds like an argument for better performance.

Not to me.  To me it sounds like a statement about the ease of writing
and reading the code.

The performance of locals vs. stack juggling depends on the
implementation.  I know no implementation that performs register
allocation of locals or stack items (except the TOS) to registers
across basic block boundaries.  This seems to hurt code with locals
more than code that keeps everything on the stacks.  Here's the data
from an earlier posting <2024Sep12.105526@mips.complang.tuwien.ac.at>,
now including data from iForth:

locals    stack
401       336   gforth-fast (AMD64)
179       132   lxf 1.6-982-823 (IA-32)
182       119   VFX FX Forth for Linux IA32 Version: 4.72 (IA-32)
241       159   VFX Forth 64 5.43 (AMD64)
163       175   iforth-5.1 mini (AMD64)

The data from iForth is the outlier here, let's look at the code:

Source code:
defer dummy
: z" [char] " parse 2drop postpone dummy ; immediate
defer zformat
defer z+
defer >name
defer error

: VICHECK1 {: pindex paddr -- pindex' paddr :} \ Checks for valid index
\ paddr is the address of the data, the first cell of which contains
\ the array size
    pindex 0 paddr @ WITHIN IF \ Index is valid
        pindex paddr
    ELSE \ Index is invalid
        Z" Invalid index " pindex ZFORMAT Z+
        Z" for " Z+ paddr >NAME 1+ Z+ \ >NAME does not work for separated data
        Z" length " Z+ paddr @ ZFORMAT Z+
        ERROR
        0 paddr \ Use zeroth index
    THEN ;

: VICHECK2 ( pindex paddr -- pindex' paddr ) \ Checks for valid index
\ paddr is the address of the data, the first cell of which contains
\ the array size
    over 0 2 pick @ WITHIN 0= IF \ Index is invalid
        Z" Invalid index " 2 PICK ZFORMAT Z+
        Z" for " Z+ OVER CELL- @ Z+ \ Add NFA from extra cell
        Z" length " Z+ OVER @ ZFORMAT Z+
        ERROR
        NIP 0 SWAP \ Use zeroth index
    THEN ;

One difference is that VICHECK2 does not just replace the locals with
stack stuff and eliminate the first branch of the IF, but also
replaces ">NAME 1+" with "CELL- @".

Disassembled code:
VICHECK1                              VICHECK2
pop   rbx                             pop   rbx
lea   rsi, [rsi #-16 +] qword         mov   rdi, [rsp] qword
mov   [esi] dword, rbx                push  rbx
pop   rbx                             push  rdi
lea   rsi, [rsi #-16 +] qword         push  0 b#
mov   [esi] dword, rbx                mov   rbx, [rsp #16 +] qword
mov   rbx, [rsi #16 +] qword          pop   rdi
mov   rbx, [rbx] qword                mov   rax, rdi
mov   rdi, [rsi] qword                sub   rax, [rbx] qword
cmp   rbx, rdi                        neg   rax
jbe   $10227337 offset NEAR           pop   rbx
push  [rsi] qword                     sub   rbx, rdi
push  [rsi #16 +] qword               cmp   rax, rbx
jmp   $10227395 offset NEAR           seta  bl
call  $10226600 qword-offset          movzx rbx, bl
push  [rsi] qword                     neg   rbx
call  $10226E90 qword-offset          cmp   rbx, 0 b#
call  $10226EB0 qword-offset          jne   $10227465 offset NEAR
call  $10226600 qword-offset          call  $10226600 qword-offset
call  $10226EB0 qword-offset          mov   rbx, [rsp #16 +] qword
push  [rsi #16 +] qword               push  rbx
call  $10226ED0 qword-offset          call  $10226E90 qword-offset
pop   rbx                             call  $10226EB0 qword-offset
lea   rbx, [rbx 1 +] qword            call  $10226600 qword-offset
push  rbx                             call  $10226EB0 qword-offset
call  $10226EB0 qword-offset          pop   rbx
call  $10226600 qword-offset          mov   rdi, [rsp] qword
call  $10226EB0 qword-offset          push  rbx
mov   rbx, [rsi #16 +] qword          push  [rdi -8 +] qword
push  [rbx] qword                     call  $10226EB0 qword-offset
call  $10226E90 qword-offset          call  $10226600 qword-offset
call  $10226EB0 qword-offset          call  $10226EB0 qword-offset
call  $10226EF0 qword-offset          pop   rbx
push  0 b#                            mov   rdi, [rsp] qword
push  [rsi #16 +] qword               push  rbx
add   rsi, #32 b#                     push  [rdi] qword
;                                     call  $10226E90 qword-offset
                                      call  $10226EB0 qword-offset
                                      call  $10226EF0 qword-offset
                                      pop   rbx
                                      pop   rdi
                                      mov   rdi, 0 d#
                                      mov   rcx, rdi
                                      push  rcx
                                      push  rbx
                                      ;

iForth 5.1-mini does not even keep the TOS in a register on basic
block boundaries, which results in pops and pushes at all the
boundaries, especially for the stack-only code.  However, in the
actual application (where Z", ZFORMAT etc. don't compile as deferred
words) it would probably inline many of these words which might result
in better code for the stack variant.  It does not keep locals in
stack items, either, but accesses them in memory through a separate
stack pointer.

The code at the start of VICHECK2 does not suffer from basic block
boundaries, yet makes less use of registers than I expected.  By
contrast, in VICHECK1 iforth discovers that "0 paddr @ within" is
equivalent to "paddr @ u<", while for "0 2 pick @ within" it fails to
make the equivalent discovery.

- 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: https://forth-standard.org/
   EuroForth 2024: https://euro.theforth.net

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


Thread

"Back & Forth" is back! Hans Bezemer <the.beez.speaks@gmail.com> - 2024-08-10 12:57 +0200
  Re: "Back & Forth" is back! dxf <dxforth@gmail.com> - 2024-08-11 13:35 +1000
    Re: "Back & Forth" is back! Hans Bezemer <the.beez.speaks@gmail.com> - 2024-08-11 14:46 +0200
  Avoid treating the stack as an array [Re: "Back & Forth" is back!] Buzz McCool <buzz_mccool@yahoo.com> - 2024-08-30 09:04 -0700
    Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-08-30 20:32 +0000
      Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] BuzzMcCool <buzz_mccool@yahoo.com> - 2024-08-30 23:00 -0700
      Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Buzz McCool <buzz_mccool@yahoo.com> - 2024-09-02 09:03 -0700
        Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-03 11:23 +1000
          Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Buzz McCool <buzz_mccool@yahoo.com> - 2024-09-02 22:53 -0700
            Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-03 17:27 +1000
      Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-11 11:20 +0200
        Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-11 09:49 +0000
          Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-11 14:41 +0200
        Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-12 14:01 +1000
    Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-08-31 11:05 +1000
      Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] BuzzMcCool <buzz_mccool@yahoo.com> - 2024-08-30 22:59 -0700
        Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-05 17:18 +0200
          Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-05 17:37 +0200
            Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-05 17:42 +0200
          Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Buzz McCool <buzz_mccool@yahoo.com> - 2024-09-06 14:03 -0700
            Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-07 14:40 +0200
              Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-10 04:26 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-10 23:19 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-11 12:03 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-11 14:32 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-11 23:51 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-12 18:21 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-12 09:08 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-12 10:11 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-12 10:31 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-12 10:19 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-13 09:37 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-13 07:56 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-13 19:47 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-13 03:38 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Jan Coombs <jan4comp.lang.forth@murray-microft.co.uk> - 2024-09-13 13:07 +0100
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-13 17:59 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-14 01:12 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-14 01:56 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-14 21:56 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-14 09:10 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-15 15:17 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-15 09:52 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-16 12:46 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-15 11:14 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-13 13:07 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-13 18:07 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-14 12:48 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-14 05:47 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-14 06:19 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-14 18:40 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Stephen Pelc <stephen@vfxforth.com> - 2024-09-15 15:04 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-15 16:16 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Stephen Pelc <stephen@vfxforth.com> - 2024-09-15 21:35 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-15 14:45 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Stephen Pelc <stephen@vfxforth.com> - 2024-09-16 12:19 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-16 14:37 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-16 17:37 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-16 18:58 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-16 19:26 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-17 06:53 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-16 17:29 +0000
                value-flavoured structures (was: Avoid treating the stack as an array) Ruvim <ruvim.pinka@gmail.com> - 2024-09-27 12:15 +0400
                Re: value-flavoured structures minforth@gmx.net (minforth) - 2024-09-27 08:51 +0000
                Re: value-flavoured structures mhx@iae.nl (mhx) - 2024-09-27 09:38 +0000
                Re: value-flavoured structures Ruvim <ruvim.pinka@gmail.com> - 2024-09-27 16:27 +0400
                Re: value-flavoured structures minforth@gmx.net (minforth) - 2024-09-27 12:46 +0000
                Re: value-flavoured structures Ruvim <ruvim.pinka@gmail.com> - 2024-09-27 23:28 +0400
                Re: value-flavoured structures Paul Rubin <no.email@nospam.invalid> - 2024-09-27 19:13 -0700
                Re: value-flavoured structures dxf <dxforth@gmail.com> - 2024-09-28 14:19 +1000
                Re: value-flavoured structures Paul Rubin <no.email@nospam.invalid> - 2024-09-27 22:38 -0700
                Re: value-flavoured structures albert@spenarnc.xs4all.nl - 2024-09-28 13:21 +0200
                Re: value-flavoured structures Paul Rubin <no.email@nospam.invalid> - 2024-09-28 10:52 -0700
                Re: value-flavoured structures Paul Rubin <no.email@nospam.invalid> - 2024-09-28 11:06 -0700
                Re: value-flavoured structures dxf <dxforth@gmail.com> - 2024-09-28 14:04 +1000
                Re: value-flavoured structures anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-10-03 16:32 +0000
                Re: value-flavoured structures dxf <dxforth@gmail.com> - 2024-10-04 13:00 +1000
                Re: value-flavoured structures albert@spenarnc.xs4all.nl - 2024-10-04 23:27 +0200
                Re: value-flavoured structures (was: Avoid treating the stack as an array) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-10-03 15:58 +0000
                Re: value-flavoured structures Ruvim <ruvim.pinka@gmail.com> - 2024-10-04 11:17 +0400
                Re: value-flavoured structures anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-10-04 11:52 +0000
                Re: value-flavoured structures Ruvim <ruvim.pinka@gmail.com> - 2024-10-04 19:17 +0400
                Re: value-flavoured structures anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-10-04 18:04 +0000
                Re: value-flavoured structures Ruvim <ruvim.pinka@gmail.com> - 2024-10-05 15:06 +0400
                Re: value-flavoured structures anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-10-05 15:52 +0000
                value-flavoured properties of a word (was: value-flavoured structures) Ruvim <ruvim.pinka@gmail.com> - 2024-10-06 17:12 +0400
                value-flavoured approach (was: value-flavoured structures) Ruvim <ruvim.pinka@gmail.com> - 2024-10-06 20:04 +0400
                value-flavoured approach in API (was: value-flavoured structures) Ruvim <ruvim.pinka@gmail.com> - 2024-10-06 20:58 +0400
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-14 12:32 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-14 14:52 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-14 15:08 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-14 17:13 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-14 17:43 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-14 17:41 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-14 18:54 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-14 19:19 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-15 06:17 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-15 07:30 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-15 07:35 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-15 11:42 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-15 18:14 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-15 08:58 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-15 09:58 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (ahmed) - 2024-09-15 12:06 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-16 09:13 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-16 10:13 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-16 10:36 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-16 22:47 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] melahi_ahmed@yahoo.fr (Ahmed) - 2024-09-16 13:21 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-16 13:33 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-16 12:16 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-16 19:55 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-16 21:43 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-17 10:47 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-17 09:12 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Stephen Pelc <stephen@vfxforth.com> - 2024-09-17 08:43 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-17 07:24 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-15 09:56 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-16 14:11 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-15 23:32 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-16 08:48 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-16 20:01 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-15 11:20 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-15 15:28 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-15 11:53 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-12 08:55 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-15 12:39 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-16 16:26 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-17 12:18 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-18 13:08 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-17 22:39 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-18 17:30 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-18 13:10 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-19 14:14 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-28 13:49 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-28 22:36 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-29 14:22 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-29 11:44 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-30 16:13 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-29 14:40 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] mhx@iae.nl (mhx) - 2024-09-29 16:53 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-29 11:33 -0700
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-11 11:02 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-11 13:29 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Paul Rubin <no.email@nospam.invalid> - 2024-09-12 00:10 -0700
            Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Stephen Pelc <stephen@vfxforth.com> - 2024-09-08 14:56 +0000
              Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-08 16:09 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] Hans Bezemer <the.beez.speaks@gmail.com> - 2024-09-09 17:15 +0200
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] minforth@gmx.net (minforth) - 2024-09-09 21:16 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] dxf <dxforth@gmail.com> - 2024-09-10 12:21 +1000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] albert@spenarnc.xs4all.nl - 2024-09-10 12:10 +0200
              Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-08 16:27 +0000
                Re: Avoid treating the stack as an array [Re: "Back & Forth" is back!] anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-09-09 17:34 +0000

csiph-web