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


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

RFD: TRAVERSE-WORDLIST v6 revision

Started by"Alex McDonald" <blog@rivadpm.com>
First post2013-07-25 18:40 -0700
Last post2013-08-08 16:49 +0000
Articles 20 on this page of 184 — 18 participants

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


Contents

  RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-07-25 18:40 -0700
    Re: RFD: TRAVERSE-WORDLIST v6 revision Alex McDonald <blog@rivadpm.com> - 2013-07-25 21:14 -0700
    Re: RFD: TRAVERSE-WORDLIST v6 revision albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-07-26 10:36 +0000
      Re: RFD: TRAVERSE-WORDLIST v6 revision Lars Brinkhoff <lars.spam@nocrew.org> - 2013-07-26 15:19 +0200
    Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-26 13:44 +0000
      Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-07-26 08:55 -0500
      Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-26 16:10 +0200
        Re: RFD: TRAVERSE-WORDLIST v6 revision mhx@iae.nl - 2013-07-26 11:50 -0700
          Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-26 21:03 +0200
            Re: RFD: TRAVERSE-WORDLIST v6 revision "Elizabeth D. Rather" <erather@forth.com> - 2013-07-26 10:38 -1000
              Re: RFD: TRAVERSE-WORDLIST v6 revision Alex McDonald <blog@rivadpm.com> - 2013-07-27 08:44 -0700
            Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-27 16:26 +0000
              Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-27 23:44 +0200
            Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-29 17:16 +0000
      Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-26 15:24 +0000
        Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-07-26 10:55 -0500
          Re: RFD: TRAVERSE-WORDLIST v6 revision albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-07-27 02:10 +0000
          Re: RFD: TRAVERSE-WORDLIST v6 revision peter.m.falth@gmail.com - 2013-07-27 02:32 -0700
        Re: RFD: TRAVERSE-WORDLIST v6 revision "Elizabeth D. Rather" <erather@forth.com> - 2013-07-26 08:32 -1000
          Re: RFD: TRAVERSE-WORDLIST v6 revision albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-07-27 18:07 +0000
            Re: RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-07-27 11:34 -0700
            Re: RFD: TRAVERSE-WORDLIST v6 revision Mark Wills <markrobertwills@yahoo.co.uk> - 2013-07-29 01:42 -0700
          Re: RFD: TRAVERSE-WORDLIST v6 revision Alex McDonald <blog@rivadpm.com> - 2013-07-27 09:02 -0700
            Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-27 16:46 +0000
              Re: RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-07-27 12:07 -0700
                Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-27 23:42 +0200
                  xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) "Alex McDonald" <blog@rivadpm.com> - 2013-07-28 22:43 +0100
                    Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-29 01:10 +0200
                      Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Alex McDonald <blog@rivadpm.com> - 2013-07-29 01:36 -0700
                        Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-29 14:10 +0200
                      Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-30 10:12 +0000
                        Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-31 01:25 +0200
                      Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-07-30 12:27 +0000
                        Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) m.a.m.hendrix@tue.nl - 2013-07-30 06:31 -0700
                        Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-30 14:03 +0000
                          Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-07-30 16:46 +0000
                            Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-01 12:08 +0000
                              Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-01 08:20 -0500
                                Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-01 22:20 +0200
                                  Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-02 02:59 -0500
                                    Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-02 13:32 +0000
                                      Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-02 09:15 -0500
                                        Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-02 15:17 +0000
                                          Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-02 11:28 -0500
                                            Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Alex McDonald <blog@rivadpm.com> - 2013-08-02 10:17 -0700
                                              Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-02 14:14 -0500
                                    Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-02 10:18 -0700
                                      Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-02 14:32 -0500
                                        Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-03 00:00 -0700
                                          Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-03 02:00 -0500
                                            Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-03 15:20 -0700
                                              Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 02:42 -0500
                                                Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-04 01:27 -0700
                                                  Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 03:29 -0500
                                                    Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-04 11:09 -0700
                                                      Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 12:59 -0500
                                                Re: xt as a single point of reference Bill Richards <billrich@gmx.com> - 2013-08-04 11:43 +0000
                                                  Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 07:13 -0500
                                                    Re: xt as a single point of reference Bill Richards <billrich@gmx.com> - 2013-08-04 13:25 +0000
                                                      Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 10:20 -0500
                                                        Re: xt as a single point of reference Bill Richards <billrich@gmx.com> - 2013-08-04 16:09 +0000
                                                          [OT] Free software ramblings (was: xt as a single point of reference) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 11:55 -0500
                                                            Re: [OT] Free software ramblings (was: xt as a single point of reference) Bill Richards <billrich@gmx.com> - 2013-08-04 17:03 +0000
                                                              Re: [OT] Free software ramblings Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 13:13 -0500
                                                            Re: [OT] Free software ramblings Paul Rubin <no.email@nospam.invalid> - 2013-08-04 10:33 -0700
                                                              Re: [OT] Free software ramblings albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-08-04 18:12 +0000
                                                              Re: [OT] Free software ramblings Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 13:17 -0500
                                                                Re: [OT] Free software ramblings anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-05 16:55 +0000
                                                        Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-04 10:17 -0700
                                                          Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 13:23 -0500
                                                            Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-05 00:30 -0700
                                                              Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-05 03:40 -0500
                                                Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-04 23:26 +0200
                                                  Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 17:30 -0500
                                                    Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-06 13:52 +0200
                                                      Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-06 16:41 -0500
                                            Re: xt as a single point of reference "Elizabeth D. Rather" <erather@forth.com> - 2013-08-04 14:00 -0500
                                              Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-04 16:28 -0700
                                                Re: xt as a single point of reference "Elizabeth D. Rather" <erather@forth.com> - 2013-08-04 19:03 -0500
                                                  Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-04 23:31 -0700
                                                    Re: xt as a single point of reference Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-05 03:48 -0500
                                                      Re: xt as a single point of reference "Elizabeth D. Rather" <erather@forth.com> - 2013-08-05 22:41 -0700
                                                      Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-06 13:27 +0200
                                                        Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-06 06:22 -0700
                                                    Re: xt as a single point of reference "Elizabeth D. Rather" <erather@forth.com> - 2013-08-05 22:39 -0700
                                                  Re: xt as a single point of reference Bill Richards <billrich@gmx.com> - 2013-08-05 07:50 +0000
                                                    Re: xt as a single point of reference albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-08-05 18:28 +0000
                                                    Re: xt as a single point of reference "Elizabeth D. Rather" <erather@forth.com> - 2013-08-05 22:43 -0700
                                                      Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-06 00:10 -0700
                                                        Re: xt as a single point of reference Mark Wills <markrobertwills@yahoo.co.uk> - 2013-08-06 00:16 -0700
                                                          Re: xt as a single point of reference Mark Wills <markrobertwills@yahoo.co.uk> - 2013-08-06 00:17 -0700
                                                          Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-06 00:47 -0700
                                                            Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-06 13:35 +0200
                                                          Re: xt as a single point of reference albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-08-06 10:24 +0000
                                                        Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-06 13:32 +0200
                                                          Re: xt as a single point of reference Paul Rubin <no.email@nospam.invalid> - 2013-08-06 06:24 -0700
                                                  Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-06 13:19 +0200
                                                    Re: xt as a single point of reference "Elizabeth D. Rather" <erather@forth.com> - 2013-08-06 12:55 -1000
                                                      Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-07 01:22 +0200
                                                        Re: xt as a single point of reference "Elizabeth D. Rather" <erather@forth.com> - 2013-08-06 14:03 -1000
                                                          Re: xt as a single point of reference Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-07 13:56 +0200
                                                Re: xt as a single point of reference Bill Richards <billrich@gmx.com> - 2013-08-05 07:46 +0000
                                              Re: xt as a single point of reference Bill Richards <billrich@gmx.com> - 2013-08-05 07:42 +0000
                                    Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-04 22:29 +0200
                                      Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-04 15:34 -0500
                                        Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-05 16:59 +0000
                                          Re: xt as a single point of reference (was RFD: TRAVERSE-WORDLIST) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-05 13:30 -0500
                  Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-29 17:26 +0000
                    Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-29 19:58 +0200
                Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-29 22:01 +0000
                  Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-30 07:57 +0000
                    Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-30 09:57 +0000
                      Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-30 12:16 +0000
              Re: RFD: TRAVERSE-WORDLIST v6 revision mhx@iae.nl - 2013-07-27 14:43 -0700
              Re: RFD: TRAVERSE-WORDLIST v6 revision Mark Wills <markrobertwills@yahoo.co.uk> - 2013-07-29 01:46 -0700
                Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-07-29 04:06 -0500
                  Re: RFD: TRAVERSE-WORDLIST v6 revision Mark Wills <markrobertwills@yahoo.co.uk> - 2013-07-29 06:37 -0700
                    Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-07-29 08:44 -0500
                    Re: RFD: TRAVERSE-WORDLIST v6 revision "Elizabeth D. Rather" <erather@forth.com> - 2013-07-29 12:26 -1000
              Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-29 17:21 +0000
                Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-30 10:04 +0000
                  Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-30 12:09 +0000
                    Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-30 15:28 +0000
                      Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-07-31 01:10 +0200
                        Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-31 12:21 +0000
                          Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-31 14:34 +0000
                            Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-07-31 11:54 -0500
                            Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-31 17:00 +0000
                              Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-31 17:15 +0000
                            Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-31 22:45 +0000
                              Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-01 11:20 +0000
                                Re: RFD: TRAVERSE-WORDLIST v6 revision Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2013-08-01 21:41 +0100
                                  Re: RFD: TRAVERSE-WORDLIST v6 revision Coos Haak <chforth@hccnet.nl> - 2013-08-02 01:04 +0200
                                    Re: RFD: TRAVERSE-WORDLIST v6 revision m.a.m.hendrix@tue.nl - 2013-08-02 00:56 -0700
                                      Re: RFD: TRAVERSE-WORDLIST v6 revision Coos Haak <chforth@hccnet.nl> - 2013-08-02 22:12 +0200
                                  Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-02 13:12 +0000
                              Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-01 14:49 +0200
                                Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-08-01 13:02 +0000
                                Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-01 13:02 +0000
                      Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-01 13:07 +0000
              Re: RFD: TRAVERSE-WORDLIST v6 revision Michael L Gassanenko <m_l_g3@yahoo.com> - 2013-08-12 04:45 -0700
                Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-12 07:17 -0500
                  Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-12 15:01 +0200
                    Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-12 08:19 -0500
                      Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-12 15:33 +0200
                        Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-12 12:39 -0500
                          Re: RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-08-12 22:36 +0100
                            Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-12 17:00 -0500
                              Re: RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-08-12 23:27 +0100
                                Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-13 03:22 -0500
                                  Re: RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-08-13 16:39 +0100
                                    Re: RFD: TRAVERSE-WORDLIST v6 revision Mark Wills <markrobertwills@yahoo.co.uk> - 2013-08-14 00:57 -0700
                                      Re: RFD: TRAVERSE-WORDLIST v6 revision mhx@iae.nl - 2013-08-14 02:04 -0700
                                        Re: RFD: TRAVERSE-WORDLIST v6 revision Mark Wills <markrobertwills@yahoo.co.uk> - 2013-08-14 02:19 -0700
                                        Re: RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-08-14 11:15 +0100
                                        Re: RFD: TRAVERSE-WORDLIST v6 revision albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-08-14 12:50 +0000
                                      Re: RFD: TRAVERSE-WORDLIST v6 revision albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-08-14 12:49 +0000
                            Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-13 07:51 +0000
                              SYNONYM on VFX (was: RFD: TRAVERSE-WORDLIST v6 revision) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-13 08:33 +0000
                                Re: SYNONYM on VFX (was: RFD: TRAVERSE-WORDLIST v6 revision) Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-13 23:07 +0200
                                  Re: SYNONYM on VFX (was: RFD: TRAVERSE-WORDLIST v6 revision) Mark Wills <markrobertwills@yahoo.co.uk> - 2013-08-14 02:00 -0700
                                    Re: SYNONYM on VFX (was: RFD: TRAVERSE-WORDLIST v6 revision) Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-14 18:30 +0200
                          Re: RFD: TRAVERSE-WORDLIST v6 revision Bernd Paysan <bernd.paysan@gmx.de> - 2013-08-13 01:17 +0200
                            Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-13 03:28 -0500
                              Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-13 10:34 +0000
                                Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-13 10:11 -0500
                                  Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-13 15:55 +0000
                                    Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-13 11:20 -0500
                    Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-12 15:40 +0000
                  Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-12 15:36 +0000
                    Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-12 12:40 -0500
                      Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-13 07:29 +0000
                        Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-13 03:30 -0500
          Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-29 16:59 +0000
            Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-07-29 15:29 -0500
              Re: RFD: TRAVERSE-WORDLIST v6 revision "Elizabeth D. Rather" <erather@forth.com> - 2013-07-29 15:25 -1000
                Re: RFD: TRAVERSE-WORDLIST v6 revision stephenXXX@mpeforth.com (Stephen Pelc) - 2013-07-30 10:06 +0000
      Re: RFD: TRAVERSE-WORDLIST v6 revision albert@spenarnc.xs4all.nl (Albert van der Horst) - 2013-07-27 01:53 +0000
    Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-07-30 12:48 +0000
    Re: RFD: TRAVERSE-WORDLIST v6 revision Mark Wills <markrobertwills@yahoo.co.uk> - 2013-08-05 01:04 -0700
      Re: RFD: TRAVERSE-WORDLIST v6 revision Andrew Haley <andrew29@littlepinkcloud.invalid> - 2013-08-05 03:51 -0500
      Re: RFD: TRAVERSE-WORDLIST v6 revision "Alex McDonald" <blog@rivadpm.com> - 2013-08-05 13:37 +0100
        Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-05 17:21 +0000
    Re: RFD: TRAVERSE-WORDLIST v6 revision anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-08-08 16:49 +0000

Page 1 of 10  [1] 2 3 … 10  Next page →


#24788 — RFD: TRAVERSE-WORDLIST v6 revision

From"Alex McDonald" <blog@rivadpm.com>
Date2013-07-25 18:40 -0700
SubjectRFD: TRAVERSE-WORDLIST v6 revision
Message-ID<kssjn5$cf3$1@dont-email.me>
Comments please.




RfD: TRAVERSE-WORDLIST
----------------------

v1 20 January 2012, Alex McDonald
v2 24 January 2012, Alex McDonald
v3 03 February 2012, Alex McDonald
v4 28 February 2012, Alex McDonald
v4.1 03 March 2012, Alex McDonald
v5 04 September 2012, Alex McDonald
v6 25 July 2013, Alex McDonald

Change history:

20120120        First version
20120124        Minor typos, added section "Order of node visits"
                Added to section "Remarks"
20120125        Minor typos, cleanup and added remarks
20120203        Changed order of stack for TRAVERSE-WORDLIST
                to place the xt rightmost.
                Removed return value from TRAVERSE-WORDLIST.
                Changed xt-node halt flag to a continue flag.
                Note that if xt-node modifies the wordlist, the
                results are undefined.
                Specify NAME>... supporting words in section 2.2.
                Tidy up & correction of 4. Remarks
20120228        Section 2.1 and 2.2 moved and renumbered.
                Rename NAME>... to NT>... to more clearly
                indicate a name token rather than a name.
                Tidy up table in section 3. Experience, and
                add note re NT>... names.
                Corrected Bruce McFarling's moniker
20120904        Updates based on comments by Anton Ertl, Peter Knaggs,
                Bruce McFarling
20130725        Corrected stack signatures & reduce verbage



1. Problem
----------

There are no standard words in Forth for traversing a WORDLIST and
obtaining basic information about each node. While standard Forth
provides a great many features for extensibility of the language
(with CREATE ... DOES> being the classic example), standard Forth
lacks the basic capability of traversing the wordlist as a part of
the specification.

Such a capability is needed to provide some kinds of advanced
programming tools. For example, the programmer may want to determine
all instances of word name overlaps in all of the wordlists in the
current search order; or count, display or modify words contained in
a specific wordlist.

Many systems provide the TOOLS word WORDS that provides human-
readable output from the current wordlists in CONTEXT. TRAVERSE-
WORDLIST is a usable factor for the implementation of WORDS.

Wordlist traversal functionality is available through very similar
words in Win32Forth (VOC-ITERATE), VFX (WalkWordList), iForth
(doWORDS), lxf/ntf (WALK-WORDLIST), and ciforth (FOR-WORDS).


2. Proposal
-----------

TRAVERSE-WORDLIST ( xt wid -- ) "traverse-wordlist" TOOLS-EXT

Remove wid and xt from the stack. Traverse the wordlist wid,
executing xt (a user-specified word) once for every word in
the wordlist.

The invoked xt has the stack diagram ( nt -- u|0 ).

A non-zero value for u will invoke the xt again with a new nt until
all the nodes in the wordlist have been exhausted. Setting u to zero 
(FALSE) terminates this traversal, and xt will not be invoked again.

xt will not be invoked if the wordlist wid is empty.

nt is a system-specific name token for the node. The xt can use this
token to display, count, modify or perform any other action on the
node that the system providing nt permits. The format of nt is
opaque, but it is guaranteed to be unique for each word in the
wordlist.

2.1 Opaque NTs
--------------

Since this proposal introduces the concept of an opaque nt (name
token), the following words allow system independent reference to
specific parts of the node.

NT>STRING    ( nt -- addr count ) "name-to-string"    TOOLS-EXT

NT>STRING returns the string addr count, the definition name of the
word represented by nt. Case is dependent on the case-sensitivity of
the Forth system (see /DPANS 3.3.1.2 Definition names/). For
restrictions see (3.1 NT>STRING Restrictions)

NT>INTERPRET ( nt -- xt )         "name-to-interpret" TOOLS-EXT

NT>INTERPRET returns an xt (execution token) as discussed in
/DPANS 3.4.3 Semantics/. This xt represents the execution semantics
of the definition. It may be zero if there are no execution semantics.

NT>COMPILE   ( nt -- xt )         "name-to-compile"   TOOLS-EXT

NT>COMPILE returns an xt (execution token) as discussed in 
/DPANS 3.4. 3 Semantics/. This xt represents the compilation
semantics of the definition. It may be zero if there are no
compilation semantics.

Extend /DPANS Table 3.1 Data Types/

Symbol    Data type          Size on stack
nt        name token                1 cell

Add section /DPANS 3.1.3.5 Name tokens/

Different definitions have different name tokens, although
information obtainable from the token may be identical for different
name tokens; for instance, NT>STRING for different values of nt may
return the same string.

2.2 Order of node visits
------------------------

TRAVERSE-WORDLIST gives no guarantee as to any specific order of node
visits to each word through the invoked xt with one exception.

If a wordlist contains duplicate entries, SEARCH-WORDLIST and FIND
for a duplicated name will return the execution token of the last
temporally defined name. For instance

: SAMPLE ... ( 1 ) ;
: TEST ... ;
: RETURNS ... ;
: SAMPLE ... ( 2 ) ;
: SAMPLE ... ( 3 ) ;

defines five words, one of which, SAMPLE, is defined three times.
SEARCH-WORDLIST and FIND will only return the last definition (3).
Whether duplicated nodes are visited or not by TRAVERSE-WORDLIST is
undefined. TRAVERSE-WORDLIST is only obliged to visit the nodes TEST,
RETURNS and SAMPLE (3) from the wordlist, and can do so in any order.

Some systems may permit visiting the node for the second and
subsequent definitions of SAMPLE. Exceptionally in this case,
TRAVERSE-WORDLIST *must* visit multiply defined nodes in the order
newest to oldest (but not necessarily consecutively); that is, SAMPLE
(3) must be returned before (2), and (2) before (1).

The remaining unique nodes can appear in any order, and may be
interspersed between the duplicately named and ordered words. If this
ordering is not possible, then TRAVERSE-WORDLIST *must* call xt with
only the FINDable definition of SAMPLE.

TRAVERSE-WORDLIST is affected by the operation of FORGET or MARKER,
and the results of a traversal *must not* return words that are
unFINDable after execution of FORGET or MARKER. Additionally, any
operation during the execution of xt-node that modifies the structure
of the wordlist (that is, defining words such as : (colon) or CREATE,
or execution of FORGET or MARKER) results in undefined behaviour.


3. Rationale
------------

3.1 NT>STRING Restrictions
--------------------------

Implementations may choose to point to the string in the word's header
built when the word is defined: point to a static buffer that is
reused on each call; point to a dynamic buffer that is replaced on
each call: or some other method. Whatever technique is used, the
following are required of the string returned by NT>STRING;

 The string is read-only; operations that write to the string are not
  permitted.
 Reading outside of the bounds (addr) to (addr+count) is not
  permitted.
 The lifetime of the string is only guaranteed up to the next call of
  NT>STRING; subsequent calls to NT>STRING must assume that a different
  address, length and contents will be returned.

If the string is needed outside of this lifetime, it must be copied to
another buffer. The alternative - providing a buffer for NT>STRING's
used - has been rejected on the grounds that the buffer would have to
be of an unknown length. Although names of definitions are required
to be at least 31 characters in length (/DPANS 3.3.1.2 Definition
names/) there is no specified upper limit.

3.2 Order of node visits
------------------------

There are a number of orders in which nodes may be visited in a
wordlist, each of which depends on the specific implementation of
wordlists. Although they are often based on hash tables, no
assumptions are made in the ANS Forth specification about internal
implementations.

To conform with this and to simplify implementation of TRAVERSE-
WORDLIST and to allow various techniques to be used for wordlists, no
guarantee is given as to any specific order of node visits to each
word with the exception given in 2.2.

3.3 Use of the stack by TRAVERSE-WORDLIST
-----------------------------------------

Removal of the xt and wid by TRAVERSE-WORDLIST before invoking the xt
ensures that the data stack is not blocked; it is not permitted to
maintain control information for the traversal on the data stack.
This is to allow parameters beyond the nt to be passed to xt.
For instance, the caller may wish to maintain a count of nodes
visited on the stack.


4. Examples
-----------

  : WORDS-COUNT ( x nt -- x' u ) DROP 1+ TRUE ;
  0 ' WORDS-COUNT WID TRAVERSE-WORDLIST . ( count of nodes visited)

prints x', where x' is a count of the total number of nodes in the
wordlist WID.

  : ALL-WORDS NT>STRING CR TYPE TRUE ;
  ['] ALL-WORDS GET-CURRENT TRAVERSE-WORDLIST

prints the names of words in the current compilation wordlist.

  : CONTAINS-STRING NT>STRING 2OVER
      SEARCH IF CR TYPE THEN FALSE ;
  S" COM" ['] CONTAINS-STRING GET-CURRENT TRAVERSE-WORDLIST

prints the name of a word containing the string "COM", if it exists,
and then terminates.

4. Experience
-------------

The wordlist traversal functionality is available through very
similar words in

  Win32Forth    VOC-ITERATE
  VFX           WalkWordList
  iForth        doWORDS
  ciForth       FOR-WORDS
  lxf/ntf       WALK-WORDLIST

Commonly used to implement WORDS, these functions and others are
individual solutions with onflicting stack requirements and names.
However, all provided similar functionality to the proposed TRAVERSE-
WORDLIST, namely, the ability to inspect the individual entries in a
wordlist.

5. Remarks
----------

For this version V5 of the RFD dated 25 July 2013:

None so far.

For previous versions:

Krishna Myneni raised the topic in the comp.lang.forth newsgroup (http:
//groups.google.com/group/comp.lang.forth/browse_frm/thread/
b5f6ad076607e0b8/0dde8de4c483b9e2#0dde8de4c483b9e2)

Krishna Myneni requested specific orderings. As there are many
possible orderings that may be useful for processing nodes, TRAVERSE-
WORDLIST can be used to support them by, for instance, building a
list during execution of xt-node and sorting the results.

Peter Fälth adds: "My system (lxf/ntf) supports such a word (but with
some differences); my name is WALK-WORDLIST ( xt wid -- ). I have
also a WALK-ALL-WORDLISTS ( xt -- ) that actually is more used I
suggest also to add such a word."

Bruce McFarling requested: that words with multiple definitions are
returned in newest to oldest order. Addressed above, but a use case
and rationale would be useful.

Bruce McFarling and Peter Fälth would prefer that xt-node use a "halt?"
flag; i.e., to halt on a non-zero return value, rather than on zero.
Due to changes in the TRAVERSE-WORDLIST signature, halt on zero has
been reinstated for xt-node.

Peter Fälth, Anton Ertl and others do not like the nt return value
from TRAVERSE-WORDLIST. It has been removed, and xt-node word can use
one of its agreed parameters to return a flag or last nt.

Stephen Pelc suggested that the stack signature be simplified to
TRAVERSE-WORDLIST ( xt-node wid -- ) with xt-node ( nt -- u ). Bruce
McFarling notes that there is a loss of functionality as xt-node
cannot operate on additional information on the stack; since under
the modified signature, the TRAVERSE-WORDLIST word is free to be
using the stack underneath the nt for its own purposes.

Various discussions on return flag values, the position of the xt on
the stack for TRAVERSE-WORDLIST, the return values have been
addressed.

Bruce McFarling proposes NAME>... here described as NT>... words.

Andrew Haley proposes a completely different mechanism for traversal;
although interesting, it has not been fully explored and is not
explained here.

[toc] | [next] | [standalone]


#24790

FromAlex McDonald <blog@rivadpm.com>
Date2013-07-25 21:14 -0700
Message-ID<c67303a2-8e7f-40b6-87a3-998a7af78919@googlegroups.com>
In reply to#24788
On Thursday, 25 July 2013 18:40:47 UTC-7, Alex McDonald  wrote:
[errata] 
>   ['] ALL-WORDS GET-CURRENT TRAVERSE-WORDLIST
... 
>   S" COM" ['] CONTAINS-STRING GET-CURRENT TRAVERSE-WORDLIST

s/[']/'/ in the Examples section.

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


#24795

Fromalbert@spenarnc.xs4all.nl (Albert van der Horst)
Date2013-07-26 10:36 +0000
Message-ID<51f2511d$0$6333$e4fe514c@dreader35.news.xs4all.nl>
In reply to#24788
In article <kssjn5$cf3$1@dont-email.me>,
Alex McDonald <blog@rivadpm.com> wrote:
>Comments please.
>
>
>
>
>RfD: TRAVERSE-WORDLIST
>----------------------
>
>v1 20 January 2012, Alex McDonald
>v2 24 January 2012, Alex McDonald
>v3 03 February 2012, Alex McDonald
>v4 28 February 2012, Alex McDonald
>v4.1 03 March 2012, Alex McDonald
>v5 04 September 2012, Alex McDonald
>v6 25 July 2013, Alex McDonald
>
>Change history:
>
>20120120        First version
>20120124        Minor typos, added section "Order of node visits"
>                Added to section "Remarks"
>20120125        Minor typos, cleanup and added remarks
>20120203        Changed order of stack for TRAVERSE-WORDLIST
>                to place the xt rightmost.
>                Removed return value from TRAVERSE-WORDLIST.
>                Changed xt-node halt flag to a continue flag.
>                Note that if xt-node modifies the wordlist, the
>                results are undefined.
>                Specify NAME>... supporting words in section 2.2.
>                Tidy up & correction of 4. Remarks
>20120228        Section 2.1 and 2.2 moved and renumbered.
>                Rename NAME>... to NT>... to more clearly
>                indicate a name token rather than a name.
>                Tidy up table in section 3. Experience, and
>                add note re NT>... names.
>                Corrected Bruce McFarling's moniker
>20120904        Updates based on comments by Anton Ertl, Peter Knaggs,
>                Bruce McFarling
>20130725        Corrected stack signatures & reduce verbage
>
>
>
>1. Problem
>----------
>
>There are no standard words in Forth for traversing a WORDLIST and
>obtaining basic information about each node. While standard Forth
>provides a great many features for extensibility of the language
>(with CREATE ... DOES> being the classic example), standard Forth
>lacks the basic capability of traversing the wordlist as a part of
>the specification.
>
>Such a capability is needed to provide some kinds of advanced
>programming tools. For example, the programmer may want to determine
>all instances of word name overlaps in all of the wordlists in the
>current search order; or count, display or modify words contained in
>a specific wordlist.
>
>Many systems provide the TOOLS word WORDS that provides human-
>readable output from the current wordlists in CONTEXT. TRAVERSE-
>WORDLIST is a usable factor for the implementation of WORDS.
>
>Wordlist traversal functionality is available through very similar
>words in Win32Forth (VOC-ITERATE), VFX (WalkWordList), iForth
>(doWORDS), lxf/ntf (WALK-WORDLIST), and ciforth (FOR-WORDS).
>
>
>2. Proposal
>-----------
>
>TRAVERSE-WORDLIST ( xt wid -- ) "traverse-wordlist" TOOLS-EXT
>
>Remove wid and xt from the stack. Traverse the wordlist wid,
>executing xt (a user-specified word) once for every word in
>the wordlist.
>
>The invoked xt has the stack diagram ( nt -- u|0 ).
>
>A non-zero value for u will invoke the xt again with a new nt until
>all the nodes in the wordlist have been exhausted. Setting u to zero
>(FALSE) terminates this traversal, and xt will not be invoked again.
>
>xt will not be invoked if the wordlist wid is empty.
>
>nt is a system-specific name token for the node. The xt can use this
>token to display, count, modify or perform any other action on the
>node that the system providing nt permits. The format of nt is
>opaque, but it is guaranteed to be unique for each word in the
>wordlist.
>
>2.1 Opaque NTs
>--------------
>
>Since this proposal introduces the concept of an opaque nt (name
>token), the following words allow system independent reference to
>specific parts of the node.
>
>NT>STRING    ( nt -- addr count ) "name-to-string"    TOOLS-EXT
>
>NT>STRING returns the string addr count, the definition name of the
>word represented by nt. Case is dependent on the case-sensitivity of
>the Forth system (see /DPANS 3.3.1.2 Definition names/). For
>restrictions see (3.1 NT>STRING Restrictions)
>
>NT>INTERPRET ( nt -- xt )         "name-to-interpret" TOOLS-EXT
>
>NT>INTERPRET returns an xt (execution token) as discussed in
>/DPANS 3.4.3 Semantics/. This xt represents the execution semantics
>of the definition. It may be zero if there are no execution semantics.
>
>NT>COMPILE   ( nt -- xt )         "name-to-compile"   TOOLS-EXT
>
>NT>COMPILE returns an xt (execution token) as discussed in
>/DPANS 3.4. 3 Semantics/. This xt represents the compilation
>semantics of the definition. It may be zero if there are no
>compilation semantics.
>
>Extend /DPANS Table 3.1 Data Types/
>
>Symbol    Data type          Size on stack
>nt        name token                1 cell
>
>Add section /DPANS 3.1.3.5 Name tokens/
>
>Different definitions have different name tokens, although
>information obtainable from the token may be identical for different
>name tokens; for instance, NT>STRING for different values of nt may
>return the same string.
>
>2.2 Order of node visits
>------------------------
>
>TRAVERSE-WORDLIST gives no guarantee as to any specific order of node
>visits to each word through the invoked xt with one exception.
>
>If a wordlist contains duplicate entries, SEARCH-WORDLIST and FIND
>for a duplicated name will return the execution token of the last
>temporally defined name. For instance
>
>: SAMPLE ... ( 1 ) ;
>: TEST ... ;
>: RETURNS ... ;
>: SAMPLE ... ( 2 ) ;
>: SAMPLE ... ( 3 ) ;
>
>defines five words, one of which, SAMPLE, is defined three times.
>SEARCH-WORDLIST and FIND will only return the last definition (3).
>Whether duplicated nodes are visited or not by TRAVERSE-WORDLIST is
>undefined. TRAVERSE-WORDLIST is only obliged to visit the nodes TEST,
>RETURNS and SAMPLE (3) from the wordlist, and can do so in any order.
>
>Some systems may permit visiting the node for the second and
>subsequent definitions of SAMPLE. Exceptionally in this case,
>TRAVERSE-WORDLIST *must* visit multiply defined nodes in the order
>newest to oldest (but not necessarily consecutively); that is, SAMPLE
>(3) must be returned before (2), and (2) before (1).
>
>The remaining unique nodes can appear in any order, and may be
>interspersed between the duplicately named and ordered words. If this
>ordering is not possible, then TRAVERSE-WORDLIST *must* call xt with
>only the FINDable definition of SAMPLE.
>
>TRAVERSE-WORDLIST is affected by the operation of FORGET or MARKER,
>and the results of a traversal *must not* return words that are
>unFINDable after execution of FORGET or MARKER. Additionally, any
>operation during the execution of xt-node that modifies the structure
>of the wordlist (that is, defining words such as : (colon) or CREATE,
>or execution of FORGET or MARKER) results in undefined behaviour.
>
>
>3. Rationale
>------------
>
>3.1 NT>STRING Restrictions
>--------------------------
>
>Implementations may choose to point to the string in the word's header
>built when the word is defined: point to a static buffer that is
>reused on each call; point to a dynamic buffer that is replaced on
>each call: or some other method. Whatever technique is used, the
>following are required of the string returned by NT>STRING;
>
> The string is read-only; operations that write to the string are not
>  permitted.
> Reading outside of the bounds (addr) to (addr+count) is not
>  permitted.
> The lifetime of the string is only guaranteed up to the next call of
>  NT>STRING; subsequent calls to NT>STRING must assume that a different
>  address, length and contents will be returned.
>
>If the string is needed outside of this lifetime, it must be copied to
>another buffer. The alternative - providing a buffer for NT>STRING's
>used - has been rejected on the grounds that the buffer would have to
>be of an unknown length. Although names of definitions are required
>to be at least 31 characters in length (/DPANS 3.3.1.2 Definition
>names/) there is no specified upper limit.
>
>3.2 Order of node visits
>------------------------
>
>There are a number of orders in which nodes may be visited in a
>wordlist, each of which depends on the specific implementation of
>wordlists. Although they are often based on hash tables, no
>assumptions are made in the ANS Forth specification about internal
>implementations.
>
>To conform with this and to simplify implementation of TRAVERSE-
>WORDLIST and to allow various techniques to be used for wordlists, no
>guarantee is given as to any specific order of node visits to each
>word with the exception given in 2.2.
>
>3.3 Use of the stack by TRAVERSE-WORDLIST
>-----------------------------------------
>
>Removal of the xt and wid by TRAVERSE-WORDLIST before invoking the xt
>ensures that the data stack is not blocked; it is not permitted to
>maintain control information for the traversal on the data stack.
>This is to allow parameters beyond the nt to be passed to xt.
>For instance, the caller may wish to maintain a count of nodes
>visited on the stack.
>
>
>4. Examples
>-----------
>
>  : WORDS-COUNT ( x nt -- x' u ) DROP 1+ TRUE ;
>  0 ' WORDS-COUNT WID TRAVERSE-WORDLIST . ( count of nodes visited)
>
>prints x', where x' is a count of the total number of nodes in the
>wordlist WID.
>
>  : ALL-WORDS NT>STRING CR TYPE TRUE ;
>  ['] ALL-WORDS GET-CURRENT TRAVERSE-WORDLIST
>
>prints the names of words in the current compilation wordlist.
>
>  : CONTAINS-STRING NT>STRING 2OVER
>      SEARCH IF CR TYPE THEN FALSE ;
>  S" COM" ['] CONTAINS-STRING GET-CURRENT TRAVERSE-WORDLIST
>
>prints the name of a word containing the string "COM", if it exists,
>and then terminates.
>
>4. Experience
>-------------
>
>The wordlist traversal functionality is available through very
>similar words in
>
>  Win32Forth    VOC-ITERATE
>  VFX           WalkWordList
>  iForth        doWORDS
>  ciForth       FOR-WORDS
>  lxf/ntf       WALK-WORDLIST
>
>Commonly used to implement WORDS, these functions and others are
>individual solutions with onflicting stack requirements and names.
>However, all provided similar functionality to the proposed TRAVERSE-
>WORDLIST, namely, the ability to inspect the individual entries in a
>wordlist.
>
>5. Remarks
>----------
>
>For this version V5 of the RFD dated 25 July 2013:
>
>None so far.
>
>For previous versions:
>
>Krishna Myneni raised the topic in the comp.lang.forth newsgroup (http:
>//groups.google.com/group/comp.lang.forth/browse_frm/thread/
>b5f6ad076607e0b8/0dde8de4c483b9e2#0dde8de4c483b9e2)
>
>Krishna Myneni requested specific orderings. As there are many
>possible orderings that may be useful for processing nodes, TRAVERSE-
>WORDLIST can be used to support them by, for instance, building a
>list during execution of xt-node and sorting the results.
>
>Peter Fälth adds: "My system (lxf/ntf) supports such a word (but with
>some differences); my name is WALK-WORDLIST ( xt wid -- ). I have
>also a WALK-ALL-WORDLISTS ( xt -- ) that actually is more used I
>suggest also to add such a word."
>
>Bruce McFarling requested: that words with multiple definitions are
>returned in newest to oldest order. Addressed above, but a use case
>and rationale would be useful.
>
>Bruce McFarling and Peter Fälth would prefer that xt-node use a "halt?"
>flag; i.e., to halt on a non-zero return value, rather than on zero.
>Due to changes in the TRAVERSE-WORDLIST signature, halt on zero has
>been reinstated for xt-node.
>
>Peter Fälth, Anton Ertl and others do not like the nt return value
>from TRAVERSE-WORDLIST. It has been removed, and xt-node word can use
>one of its agreed parameters to return a flag or last nt.
>
>Stephen Pelc suggested that the stack signature be simplified to
>TRAVERSE-WORDLIST ( xt-node wid -- ) with xt-node ( nt -- u ). Bruce
>McFarling notes that there is a loss of functionality as xt-node
>cannot operate on additional information on the stack; since under
>the modified signature, the TRAVERSE-WORDLIST word is free to be
>using the stack underneath the nt for its own purposes.
>
>Various discussions on return flag values, the position of the xt on
>the stack for TRAVERSE-WORDLIST, the return values have been
>addressed.
>
>Bruce McFarling proposes NAME>... here described as NT>... words.
>
>Andrew Haley proposes a completely different mechanism for traversal;
>although interesting, it has not been fully explored and is not
>explained here.
>

This presupposes an opaque namethingy (called DEA in ciforth).

ciforth has had the following since day one (ca 2002).
It is used to implement `` WORDS ''
From the glossary (` means italix)

"
 FOR-WORDS

 STACKEFFECT: x1...xn xt wid --- x1...xn

 DESCRIPTION:

 For all words from a word list identified by `wid execute `xt with as
 data `x1..xn plus the DEA of those words. `xt must have the stack
 diagram `x1..`xn `dea --- `x1..`xn.
"

[Note (only for ciforth) : you can use the DEA of any
word as a WID and the remainder of the word list will be searched. ]

There is no control over the order in which the wid is traversed.
I don't think it should.

: WORDS   ['] ID.  CONTEXT @ FOR-WORDS ;

Groetjes Albert
-- 
Albert van der Horst, UTRECHT,THE NETHERLANDS
Economic growth -- being exponential -- ultimately falters.
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

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


#24797

FromLars Brinkhoff <lars.spam@nocrew.org>
Date2013-07-26 15:19 +0200
Message-ID<85ppu531dk.fsf@junk.nocrew.org>
In reply to#24795
Albert van der Horst wrote:
> This presupposes an opaque namethingy (called DEA in ciforth).

It's right there in the text you quoted:
> > 2.1 Opaque NTs


>  FOR-WORDS
>  For all words from a word list identified by `wid execute `xt with as
>  data `x1..xn plus the DEA of those words.

I have been using Alex' TRAVERSE-WORDLIST for most of my wordlist-
traversal needs, and for some use cases it's nice to be able to halt
the traversal in a simple way (i.e. not using R> DROP or THROW).

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


#24798

FromstephenXXX@mpeforth.com (Stephen Pelc)
Date2013-07-26 13:44 +0000
Message-ID<51f27a43.1336111497@news.demon.co.uk>
In reply to#24788
On Thu, 25 Jul 2013 18:40:47 -0700, "Alex McDonald" <blog@rivadpm.com>
wrote:

>Comments please.

An xt is already an opaque type. I ask again, why do we need another
one just to get at names/headers? I suspect that there are a few
systems in which an xt corresponds to a CFA (code field address)
and from which names are either tedious or impossible to find.
There are certainly issues in cross compilers, but we (MPE) have
not found them to be insuperable.

Since the original intention of an xt was to be a "single point
of reference" to a word, I believe that a system in which you
cannot get from xt to name is probably broken, if only in spirit.
It seems a little bizarre to support these systems by introducing
another opaque type and then to introduce words to convert between
these opaque types. Perhaps these spritually broken systems should
be named.

Note that it is not TRAVERSE-WORDLIST that I object to, only the
introduction of another opaque type.

Stephen

-- 
Stephen Pelc, stephenXXX@mpeforth.com
MicroProcessor Engineering Ltd - More Real, Less Time
133 Hill Lane, Southampton SO15 5AF, England
tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
web: http://www.mpeforth.com - free VFX Forth downloads

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


#24799

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2013-07-26 08:55 -0500
Message-ID<M_CdnaHkT6ZY4m_MnZ2dnUVZ_uSdnZ2d@supernews.com>
In reply to#24798
Stephen Pelc <stephenXXX@mpeforth.com> wrote:
> On Thu, 25 Jul 2013 18:40:47 -0700, "Alex McDonald" <blog@rivadpm.com>
> wrote:
> 
>>Comments please.
> 
> An xt is already an opaque type. I ask again, why do we need another
> one just to get at names/headers? I suspect that there are a few
> systems in which an xt corresponds to a CFA (code field address)
> and from which names are either tedious or impossible to find.
> There are certainly issues in cross compilers, but we (MPE) have
> not found them to be insuperable.
> 
> Since the original intention of an xt was to be a "single point
> of reference" to a word, I believe that a system in which you
> cannot get from xt to name is probably broken, if only in spirit.
> It seems a little bizarre to support these systems by introducing
> another opaque type and then to introduce words to convert between
> these opaque types. Perhaps these spritually broken systems should
> be named.
> 
> Note that it is not TRAVERSE-WORDLIST that I object to, only the
> introduction of another opaque type.

I'm sure you're right about that.  Maybe it's one area in which ANS
gave implementors too much leeway.

Andrew.

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


#24800

FromBernd Paysan <bernd.paysan@gmx.de>
Date2013-07-26 16:10 +0200
Message-ID<ksu01g$uko$1@online.de>
In reply to#24798
Stephen Pelc wrote:

> On Thu, 25 Jul 2013 18:40:47 -0700, "Alex McDonald" <blog@rivadpm.com>
> wrote:
> 
>>Comments please.
> 
> An xt is already an opaque type. I ask again, why do we need another
> one just to get at names/headers? I suspect that there are a few
> systems in which an xt corresponds to a CFA (code field address)
> and from which names are either tedious or impossible to find.
> There are certainly issues in cross compilers, but we (MPE) have
> not found them to be insuperable.
> 
> Since the original intention of an xt was to be a "single point
> of reference" to a word, I believe that a system in which you
> cannot get from xt to name is probably broken, if only in spirit.

What about synonyms?  Example: I implement WORDS with

: WORDS [: NT>STRING TYPE SPACE 0 ;] CURRENT @ TRAVERSE-WORDLIST ;

If I have a wordlist with

: foo ;
synonym bar foo

I expect WORDS to output

bar foo  ok

The xt of both bar and foo can be the same, as bar is just a synonym for 
foo.  Note that VFX does not implement it that way, it's synonyms have 
separate xts, but other systems (like current Git Gforth) implement synonyms  
in that way.

Note that it is no good idea to have a single xt for NT>COMPILE (which is 
called NAME>COMP in Gforth), because compilation semantics is either 
COMPILE, or EXECUTE an xt (depending on immediacy).

NT>STRING is called NAME>STRING in Gforth.  If Alex McDonald wants to be 
taken serious, he should at least not invent new names for words that 
already exist in some systems.

> It seems a little bizarre to support these systems by introducing
> another opaque type and then to introduce words to convert between
> these opaque types. Perhaps these spritually broken systems should
> be named.
> 
> Note that it is not TRAVERSE-WORDLIST that I object to, only the
> introduction of another opaque type.

I've crossed my light saber over that topic with Anton Ertl for the last 
year, and the Forth is strong in Anton.  So now it's your turn ;-).  Anton's 
position is that true monotoken systems like VFXForth are non-standard.

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

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


#24805

Frommhx@iae.nl
Date2013-07-26 11:50 -0700
Message-ID<0f92b0b7-669d-4eb2-990f-7cf6719840f1@googlegroups.com>
In reply to#24800
On Friday, July 26, 2013 4:10:56 PM UTC+2, Bernd Paysan wrote:Bernd Paysan <bernd.paysan@gmx.de> writes Re: RFD: TRAVERSE-WORDLIST v6 revision
[..]
> NT>STRING is called NAME>STRING in Gforth.  If Alex McDonald wants to be
> taken serious, he should at least not invent new names for words that
> already exist in some systems.
[..]

On the contrary, he should invent new names when at least two systems
have the same name for a (possibly) different thing.

This my take on this (note Albert's guidance):

FORTH> words: NAME
>HEAD               HEAD>exec           HEAD>comp           HEAD'
HEAD>FLAGS          HEAD>LOCATE         HEAD>FORGET         HEAD>HASH
HEAD>               LINK>HEAD           HEAD>LINK           HEAD>NAME
 ok
FORTH> help >HEAD
>HEAD               "to-head"                                        IFORTH
     ( xt -- dea | 0 )
     dea is the address of the dictionary entry whose execution token is xt .
     If the conversion was not possible a 0 is returned.
 ok
FORTH> ' cr >HEAD HEAD>NAME .$ CR ok
FORTH> HEAD' cr HEAD>NAME .$ CR ok

I don't intend to support 8-byte characters, hence .$ ( COUNT TYPE ).
Note that HEAD' can replace '.

-marcel

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


#24806

FromBernd Paysan <bernd.paysan@gmx.de>
Date2013-07-26 21:03 +0200
Message-ID<ksuh62$g97$1@online.de>
In reply to#24805
mhx@iae.nl wrote:

> On Friday, July 26, 2013 4:10:56 PM UTC+2, Bernd Paysan wrote:Bernd Paysan
> <bernd.paysan@gmx.de> writes Re: RFD: TRAVERSE-WORDLIST v6 revision
> [..]
>> NT>STRING is called NAME>STRING in Gforth.  If Alex McDonald wants to be
>> taken serious, he should at least not invent new names for words that
>> already exist in some systems.
> [..]
> 
> On the contrary, he should invent new names when at least two systems
> have the same name for a (possibly) different thing.

He should first research the names, and *if* there are such collisions, then 
it's time to suggest something else.  But not before.

Very classical is

>NAME ( xt -- nt )

Seen in: VFX, bigForth, Gforth, SwiftForth, Win32Forth.  Does nothing in VFX 
and Gforth git-head.

.NAME ( nt -- )

Seen in bigForth, Gforth, SwiftForth

.NAME ( xt -- )

Seen in win32forth, VFX.

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

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


#24807

From"Elizabeth D. Rather" <erather@forth.com>
Date2013-07-26 10:38 -1000
Message-ID<y6qdnTR1vrbdQ2_MnZ2dnUVZ_s6dnZ2d@supernews.com>
In reply to#24806
On 7/26/13 9:03 AM, Bernd Paysan wrote:
> mhx@iae.nl wrote:
>
>> On Friday, July 26, 2013 4:10:56 PM UTC+2, Bernd Paysan wrote:Bernd Paysan
>> <bernd.paysan@gmx.de> writes Re: RFD: TRAVERSE-WORDLIST v6 revision
>> [..]
>>> NT>STRING is called NAME>STRING in Gforth.  If Alex McDonald wants to be
>>> taken serious, he should at least not invent new names for words that
>>> already exist in some systems.
>> [..]
>>
>> On the contrary, he should invent new names when at least two systems
>> have the same name for a (possibly) different thing.
>
> He should first research the names, and *if* there are such collisions, then
> it's time to suggest something else.  But not before.

In particular, if there's a name whose behavior coincides closely enough 
with what he wants to do, he should adopt that name and behavior. We 
should work towards consensus, where possible!

Cheers,
Elizabeth

-- 
==================================================
Elizabeth D. Rather   (US & Canada)   800-55-FORTH
FORTH Inc.                         +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

"Forth-based products and Services for real-time
applications since 1973."
==================================================

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


#24814

FromAlex McDonald <blog@rivadpm.com>
Date2013-07-27 08:44 -0700
Message-ID<3f289970-f41b-4f84-8444-6bd0371f9bba@googlegroups.com>
In reply to#24807
On Friday, 26 July 2013 13:38:24 UTC-7, Elizabeth D. Rather  wrote:
> On 7/26/13 9:03 AM, Bernd Paysan wrote:
> 
> > mhx@iae.nl wrote:
> >
> >> On Friday, July 26, 2013 4:10:56 PM UTC+2, Bernd Paysan wrote:Bernd Paysan
> >> <bernd.paysan@gmx.de> writes Re: RFD: TRAVERSE-WORDLIST v6 revision
> >> [..]
> >>> NT>STRING is called NAME>STRING in Gforth.  If Alex McDonald wants to be
> >>> taken serious, he should at least not invent new names for words that
> >>> already exist in some systems.

I know you wouldn't have replied if you didn't think it worthy of discussion, and I'm taking it seriously.

> >> [..]
> >>
> >> On the contrary, he should invent new names when at least two systems
> >> have the same name for a (possibly) different thing.
> >
> > He should first research the names, and *if* there are such collisions, then
> > it's time to suggest something else.  But not before.
> 
> In particular, if there's a name whose behavior coincides closely enough 
> with what he wants to do, he should adopt that name and behavior. We 
> should work towards consensus, where possible!
> 
> Cheers,
> 
> Elizabeth
> 
>

To answer all the naming comments in this part of the discussion...

Agreed, consensus is the purpose of the RFD. Unfortunately, I'm not steeped in Forth's history, nor am I familiar with the range of Forth systems out there (with the exception of slight familiarity with gforth) and the words they may use for these tasks. 

Rather than the label I've given them -- which is changeable -- I'm more interested in the issue of the xt TRAVERSE-WORDLIST invokes being passed a "name token", rather than an xt. 

Thanks for the input.

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


#24816

FromstephenXXX@mpeforth.com (Stephen Pelc)
Date2013-07-27 16:26 +0000
Message-ID<51f3f430.1432860696@news.demon.co.uk>
In reply to#24806
On Fri, 26 Jul 2013 21:03:30 +0200, Bernd Paysan <bernd.paysan@gmx.de>
wrote:

>>NAME ( xt -- nt )
>
>Seen in: VFX, bigForth, Gforth, SwiftForth, Win32Forth.  Does nothing in VFX 
>and Gforth git-head.

It does plenty in VFX!

>
>.NAME ( nt -- )
>
>Seen in bigForth, Gforth, SwiftForth
>
>.NAME ( xt -- )
>
>Seen in win32forth, VFX.

The VFX version is *documented* and implemented as:
: .NAME         \ nfa --
\ *G Display a definition's name given an NFA.

Stephen

-- 
Stephen Pelc, stephenXXX@mpeforth.com
MicroProcessor Engineering Ltd - More Real, Less Time
133 Hill Lane, Southampton SO15 5AF, England
tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
web: http://www.mpeforth.com - free VFX Forth downloads

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


#24821

FromBernd Paysan <bernd.paysan@gmx.de>
Date2013-07-27 23:44 +0200
Message-ID<kt1f0e$ebh$2@online.de>
In reply to#24816
Stephen Pelc wrote:

> On Fri, 26 Jul 2013 21:03:30 +0200, Bernd Paysan <bernd.paysan@gmx.de>
> wrote:
> 
>>>NAME ( xt -- nt )
>>
>>Seen in: VFX, bigForth, Gforth, SwiftForth, Win32Forth.  Does nothing in
>>VFX and Gforth git-head.
> 
> It does plenty in VFX!

Ok, sorry; it still does something in VFX, but it does nothing in Gforth 
git-head, because one of the motivations to go monotoken in Gforth git-head 
is to get rid of the additional superfluous nt type ;-).

>>
>>.NAME ( nt -- )
>>
>>Seen in bigForth, Gforth, SwiftForth
>>
>>.NAME ( xt -- )
>>
>>Seen in win32forth, VFX.
> 
> The VFX version is *documented* and implemented as:
> : .NAME         \ nfa --
> \ *G Display a definition's name given an NFA.

Yes, the definition is also still the same in Gforth git-head, but there, 
nt=xt.

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

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


#24854

Fromanton@mips.complang.tuwien.ac.at (Anton Ertl)
Date2013-07-29 17:16 +0000
Message-ID<2013Jul29.191630@mips.complang.tuwien.ac.at>
In reply to#24806
Bernd Paysan <bernd.paysan@gmx.de> writes:
>mhx@iae.nl wrote:
>
>> On Friday, July 26, 2013 4:10:56 PM UTC+2, Bernd Paysan wrote:Bernd Paysan
>> <bernd.paysan@gmx.de> writes Re: RFD: TRAVERSE-WORDLIST v6 revision
>> [..]
>>> NT>STRING is called NAME>STRING in Gforth.  If Alex McDonald wants to be
>>> taken serious, he should at least not invent new names for words that
>>> already exist in some systems.
>> [..]
>> 
>> On the contrary, he should invent new names when at least two systems
>> have the same name for a (possibly) different thing.
>
>He should first research the names, and *if* there are such collisions, then 
>it's time to suggest something else.  But not before.

The RfD phase is there to sort out such issues.  Asking the proponent
to solve these issues before making the proposal is putting too much
burden on him IMO.

As I understand it, he wants to resolve the semantics issues (which
affect the number of words and their stack effects) before narrowing
down on the all-important name issue.  I think that's a good idea.

- 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 2013: http://www.euroforth.org/ef13/

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


#24802

Fromanton@mips.complang.tuwien.ac.at (Anton Ertl)
Date2013-07-26 15:24 +0000
Message-ID<2013Jul26.172429@mips.complang.tuwien.ac.at>
In reply to#24798
stephenXXX@mpeforth.com (Stephen Pelc) writes:
>On Thu, 25 Jul 2013 18:40:47 -0700, "Alex McDonald" <blog@rivadpm.com>
>wrote:
>
>>Comments please.
>
>An xt is already an opaque type. I ask again, why do we need another
>one just to get at names/headers? I suspect that there are a few
>systems in which an xt corresponds to a CFA (code field address)
>and from which names are either tedious or impossible to find.

Got it in one.

>Since the original intention of an xt was to be a "single point
>of reference" to a word

Says who?

> I believe that a system in which you
>cannot get from xt to name is probably broken, if only in spirit.
>It seems a little bizarre to support these systems by introducing
>another opaque type and then to introduce words to convert between
>these opaque types. Perhaps these spritually broken systems should
>be named.

Gforth 0.7.0.

- 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 2013: http://www.euroforth.org/ef13/

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


#24803

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2013-07-26 10:55 -0500
Message-ID<x7OdnTykJoqVAW_MnZ2dnUVZ_rmdnZ2d@supernews.com>
In reply to#24802
Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
> stephenXXX@mpeforth.com (Stephen Pelc) writes:
> 
>>I believe that a system in which you cannot get from xt to name is
>>probably broken, if only in spirit.  It seems a little bizarre to
>>support these systems by introducing another opaque type and then to
>>introduce words to convert between these opaque types. Perhaps these
>>spritually broken systems should be named.
> 
> Gforth 0.7.0.

Shoulda guessed.  Any more?

Andrew.

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


#24809

Fromalbert@spenarnc.xs4all.nl (Albert van der Horst)
Date2013-07-27 02:10 +0000
Message-ID<51f32c0e$0$619$e4fe514c@dreader34.news.xs4all.nl>
In reply to#24803
In article <x7OdnTykJoqVAW_MnZ2dnUVZ_rmdnZ2d@supernews.com>,
Andrew Haley  <andrew29@littlepinkcloud.invalid> wrote:
>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>> stephenXXX@mpeforth.com (Stephen Pelc) writes:
>>
>>>I believe that a system in which you cannot get from xt to name is
>>>probably broken, if only in spirit.  It seems a little bizarre to
>>>support these systems by introducing another opaque type and then to
>>>introduce words to convert between these opaque types. Perhaps these
>>>spritually broken systems should be named.
>>
>> Gforth 0.7.0.
>
>Shoulda guessed.  Any more?

iforth apparently, having >HEAD and HEAD> to convert
the opaque types dea and xt.

>Andrew.
-- 
Albert van der Horst, UTRECHT,THE NETHERLANDS
Economic growth -- being exponential -- ultimately falters.
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

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


#24812

Frompeter.m.falth@gmail.com
Date2013-07-27 02:32 -0700
Message-ID<1dcd5035-9b5a-4ee5-85bd-96dee0b07a41@googlegroups.com>
In reply to#24803
On Friday, July 26, 2013 5:55:52 PM UTC+2, Andrew Haley wrote:
> Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
> 
> > stephenXXX@mpeforth.com (Stephen Pelc) writes:
> 
> > 
> 
> >>I believe that a system in which you cannot get from xt to name is
> 
> >>probably broken, if only in spirit.  It seems a little bizarre to
> 
> >>support these systems by introducing another opaque type and then to
> 
> >>introduce words to convert between these opaque types. Perhaps these
> 
> >>spritually broken systems should be named.
> 
> > 
> 
> > Gforth 0.7.0.
> 
> 
> 
> Shoulda guessed.  Any more?
> 
> 
> 
> Andrew.

My system lxf/ntf.

Headers are kept in a separate address space. There is no direct way to get from the XT back to the name. You must use the TRAVERSE-WORDLIST approach. As synonyms have the same XT (would they be synonyms otherwise?)you are not garanteed to get the original name back. Each header has in fact 2 XTs, one execution and one compilation. The only connection between them is thru the header. 

Peter Fälth

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


#24804

From"Elizabeth D. Rather" <erather@forth.com>
Date2013-07-26 08:32 -1000
Message-ID<hu6dnUnJ6edXXW_MnZ2dnUVZ_sidnZ2d@supernews.com>
In reply to#24802
On 7/26/13 5:24 AM, Anton Ertl wrote:
> stephenXXX@mpeforth.com (Stephen Pelc) writes:
>> On Thu, 25 Jul 2013 18:40:47 -0700, "Alex McDonald" <blog@rivadpm.com>
>> wrote:
>>
>>> Comments please.
>>
>> An xt is already an opaque type. I ask again, why do we need another
>> one just to get at names/headers? I suspect that there are a few
>> systems in which an xt corresponds to a CFA (code field address)
>> and from which names are either tedious or impossible to find.
>
> Got it in one.
>
>> Since the original intention of an xt was to be a "single point
>> of reference" to a word
>
> Says who?

Well, that's my recollection of the intent of the Forth94 committee.

Cheers,
Elizabeth

>> I believe that a system in which you
>> cannot get from xt to name is probably broken, if only in spirit.
>> It seems a little bizarre to support these systems by introducing
>> another opaque type and then to introduce words to convert between
>> these opaque types. Perhaps these spritually broken systems should
>> be named.
>
> Gforth 0.7.0.
>
> - anton
>


-- 
==================================================
Elizabeth D. Rather   (US & Canada)   800-55-FORTH
FORTH Inc.                         +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

"Forth-based products and Services for real-time
applications since 1973."
==================================================

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


#24810

Fromalbert@spenarnc.xs4all.nl (Albert van der Horst)
Date2013-07-27 18:07 +0000
Message-ID<51f40c67$0$3197$e4fe514c@dreader36.news.xs4all.nl>
In reply to#24804
In article <51f3f756.1433666691@news.demon.co.uk>,
Stephen Pelc <stephenXXX@mpeforth.com> wrote:

>I can understand not having back pointers in space-constrained
>implementations and applications, but the named systems are all
>desktop systems. As far as I know, there are few Forth applications
>whose code exceeds 20Mb. There are also now few desktop systems with
>less than 1Gb of RAM. When a large Forth app uses a very few percent
>of a desktop, the space savings cannot be an issue any more.
>
>Would the authors of these systems please explain why not being
>able to get from an xt to a name is still a good idea?

I can explain why there is a problem getting from an xt to a name
the way an xt is intended by the standard.

:NONAME aap noot mies ;   XT>NAME

Huh?

In ciforth you get

:NONAME TASK TASK NOOP ; ID.
NONAME    OK

>
>Stephen

Groetjes Albert
-- 
Albert van der Horst, UTRECHT,THE NETHERLANDS
Economic growth -- being exponential -- ultimately falters.
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

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


Page 1 of 10  [1] 2 3 … 10  Next page →

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


csiph-web