Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #8896 > unrolled thread
| Started by | Krishna Myneni <krishna.myneni@ccreweb.org> |
|---|---|
| First post | 2012-01-16 04:36 -0800 |
| Last post | 2012-01-22 11:03 -0800 |
| Articles | 20 on this page of 201 — 18 participants |
Back to article view | Back to comp.lang.forth
Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-16 04:36 -0800
Re: Why no standard words for traversing a wordlist? Mark Wills <markrobertwills@yahoo.co.uk> - 2012-01-16 05:03 -0800
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-16 05:34 -0800
Re: Why no standard words for traversing a wordlist? Mark Wills <markrobertwills@yahoo.co.uk> - 2012-01-16 05:10 -0800
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-16 05:41 -0800
Re: Why no standard words for traversing a wordlist? Mark Wills <markrobertwills@yahoo.co.uk> - 2012-01-16 06:06 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-16 14:30 +0000
Re: Why no standard words for traversing a wordlist? Mark Wills <markrobertwills@yahoo.co.uk> - 2012-01-16 07:04 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-16 15:21 +0000
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-16 08:48 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-16 09:28 -0800
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-16 10:45 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-16 12:49 -0800
Re: Why no standard words for traversing a wordlist? "Bruce.McFarling" <bruce.mcfarling@gmail.com> - 2012-01-16 13:07 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-18 13:59 +0000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-18 06:49 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-18 15:28 +0000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-18 12:02 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-18 14:10 -0800
Re: Why no standard words for traversing a wordlist? "Elizabeth D. Rather" <erather@forth.com> - 2012-01-18 12:55 -1000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-18 17:36 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-19 03:03 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-19 05:37 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-19 06:21 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-19 06:45 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-19 14:48 +0000
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-19 09:13 -0800
How to represent the compilation semantics (was: Why no ...) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-19 17:16 +0000
Re: How to represent the compilation semantics (was: Why no ...) Alex McDonald <blog@rivadpm.com> - 2012-01-19 09:45 -0800
Re: How to represent the compilation semantics (was: Why no ...) BruceMcF <agila61@netscape.net> - 2012-01-19 09:50 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-19 09:47 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-19 12:24 +0000
Re: Why no standard words for traversing a wordlist? stephenXXX@mpeforth.com (Stephen Pelc) - 2012-01-19 13:02 +0000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-19 05:44 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-19 14:41 +0000
Re: Why no standard words for traversing a wordlist? Albert van der Horst <albert@spenarnc.xs4all.nl> - 2012-01-16 22:20 +0000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-16 14:45 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-16 17:41 +0000
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-16 10:39 -0800
Re: Why no standard words for traversing a wordlist? Paul Rubin <no.email@nospam.invalid> - 2012-01-16 12:27 -0800
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-16 20:12 -0800
Re: Why no standard words for traversing a wordlist? JennyB <jennybrien@googlemail.com> - 2012-01-19 06:00 -0800
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-19 17:32 -0800
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-19 18:55 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-20 11:06 +0000
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-20 03:39 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-20 16:48 +0000
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-20 10:15 -0800
Re: Why no standard words for traversing a wordlist? "Elizabeth D. Rather" <erather@forth.com> - 2012-01-20 09:51 -1000
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-23 12:25 +0000
RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 09:25 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-23 09:56 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-23 12:10 -0600
Re: RfD: TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-23 11:13 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Peter Fälth <peter.falth@tin.it> - 2012-01-23 13:14 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 13:39 -0800
Re: RfD: TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-23 14:47 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 17:00 -0800
Re: RfD: TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-23 17:21 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 17:40 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-23 15:07 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 16:57 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Bernd Paysan <bernd.paysan@gmx.de> - 2012-02-07 20:43 +0100
Re: RfD: TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-07 14:47 -0800
Re: RfD: TRAVERSE-WORDLIST proposal "Elizabeth D. Rather" <erather@forth.com> - 2012-02-07 13:14 -1000
Re: RfD: TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-08 18:00 -0800
Re: RfD: TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-08 19:30 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-07 15:17 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-08 18:07 -0800
Re: RfD: TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-08 19:20 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-09 01:14 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 10:34 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Aleksej Saushev <asau@inbox.ru> - 2012-01-23 22:15 +0400
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 10:43 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Aleksej Saushev <asau@inbox.ru> - 2012-01-24 10:09 +0400
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 22:19 -0800
Re: RfD: TRAVERSE-WORDLIST proposal stephenXXX@mpeforth.com (Stephen Pelc) - 2012-01-24 10:11 +0000
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-24 06:53 -0800
Re: RfD: TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-24 10:42 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-24 11:56 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Peter Fälth <peter.falth@tin.it> - 2012-01-23 13:04 -0800
Re: RfD: TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 13:14 -0800
Re: RfD: TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-25 07:16 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-23 22:13 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-30 16:35 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-30 10:25 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-30 10:43 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-30 12:01 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Peter Fälth <peter.falth@tin.it> - 2012-01-30 12:48 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-31 11:26 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-31 07:50 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-31 16:00 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-31 08:31 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-31 10:05 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-31 10:18 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-31 08:42 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-31 10:48 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-31 17:03 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-31 12:00 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-02-01 16:08 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-02-01 12:06 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-02-02 12:40 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-02-02 08:41 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-02 08:34 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-02-02 15:55 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-02-02 11:20 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-02-03 15:12 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-02-03 10:33 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-02-03 16:48 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Peter Fälth <peter.falth@tin.it> - 2012-02-03 08:07 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-31 09:36 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-31 12:05 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-31 10:33 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-31 16:50 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-31 11:07 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-31 09:36 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-31 12:09 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-31 17:33 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-31 09:29 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-31 12:17 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-01-31 11:01 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-02-01 04:11 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-01 06:27 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-02-01 11:32 -0600
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-01 10:32 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-01 11:03 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Albert van der Horst <albert@spenarnc.xs4all.nl> - 2012-02-01 20:34 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-01 12:36 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-01-31 11:09 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-03 12:53 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Brad <hwfwguy@gmail.com> - 2012-02-03 19:04 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-04 04:03 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-04 12:15 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Brad <hwfwguy@gmail.com> - 2012-02-05 14:28 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-05 17:00 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-04 04:23 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Brad <hwfwguy@gmail.com> - 2012-02-04 11:37 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-04 11:58 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-04 12:26 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-04 04:27 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-04 15:06 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-04 16:30 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-04 13:19 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-04 14:55 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-04 19:13 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-05 05:35 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-02-07 11:55 +0000
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-07 11:29 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-02-07 14:53 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal Alex McDonald <blog@rivadpm.com> - 2012-02-07 15:18 -0800
Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal BruceMcF <agila61@netscape.net> - 2012-02-05 05:51 -0800
Re: Why no standard words for traversing a wordlist? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-24 09:21 -0600
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-20 05:35 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-20 16:41 +0000
Re: Why no standard words for traversing a wordlist? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-16 10:32 -0600
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-17 07:35 -0800
Re: Why no standard words for traversing a wordlist? Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-01-17 10:08 -0600
Re: Why no standard words for traversing a wordlist? Bernd Paysan <bernd.paysan@gmx.de> - 2012-01-18 00:42 +0100
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-18 13:53 +0000
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-18 07:24 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-18 16:28 +0000
Re: Why no standard words for traversing a wordlist? Bernd Paysan <bernd.paysan@gmx.de> - 2012-01-18 21:27 +0100
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-19 17:33 +0000
Re: Why no standard words for traversing a wordlist? Bernd Paysan <bernd.paysan@gmx.de> - 2012-01-20 00:01 +0100
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-19 16:03 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-20 02:19 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-20 06:46 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-20 07:56 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-20 08:13 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-20 12:28 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-20 08:37 -0800
Re: Why no standard words for traversing a wordlist? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-01-20 11:23 +0000
Re: Why no standard words for traversing a wordlist? "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-01-19 03:10 -0500
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-19 03:08 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-19 05:50 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-19 06:16 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-19 07:13 -0800
Re: Why no standard words for traversing a wordlist? Albert van der Horst <albert@spenarnc.xs4all.nl> - 2012-01-20 13:10 +0000
Re: Why no standard words for traversing a wordlist? "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-01-19 17:50 -0500
Re: Why no standard words for traversing a wordlist? "Elizabeth D. Rather" <erather@forth.com> - 2012-01-19 13:48 -1000
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-19 17:37 -0800
Re: Why no standard words for traversing a wordlist? "Elizabeth D. Rather" <erather@forth.com> - 2012-01-19 18:14 -1000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-20 06:48 -0800
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-20 10:13 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-20 12:22 -0800
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-19 15:56 -0800
Re: Why no standard words for traversing a wordlist? "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-01-20 05:52 -0500
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-20 06:52 -0800
Re: Why no standard words for traversing a wordlist? "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-01-21 15:45 -0500
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-21 13:58 -0800
Re: Why no standard words for traversing a wordlist? "Rod Pemberton" <do_not_have@noavailemail.cmm> - 2012-01-21 21:15 -0500
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-21 18:45 -0800
Re: Why no standard words for traversing a wordlist? Alex McDonald <blog@rivadpm.com> - 2012-01-20 03:29 -0800
Re: Why no standard words for traversing a wordlist? stephenXXX@mpeforth.com (Stephen Pelc) - 2012-01-20 17:21 +0000
Re: Why no standard words for traversing a wordlist? Krishna Myneni <krishna.myneni@ccreweb.org> - 2012-01-20 10:11 -0800
Re: Why no standard words for traversing a wordlist? stephenXXX@mpeforth.com (Stephen Pelc) - 2012-01-20 18:43 +0000
Re: Why no standard words for traversing a wordlist? mhx@iae.nl (Marcel Hendrix) - 2012-01-21 08:45 +0200
Re: Why no standard words for traversing a wordlist? Albert van der Horst <albert@spenarnc.xs4all.nl> - 2012-01-21 12:37 +0000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-21 17:22 -0800
Re: Why no standard words for traversing a wordlist? stephenXXX@mpeforth.com (Stephen Pelc) - 2012-01-22 18:31 +0000
Re: Why no standard words for traversing a wordlist? BruceMcF <agila61@netscape.net> - 2012-01-22 11:03 -0800
Page 6 of 11 — ← Prev page 1 … 4 5 [6] 7 8 … 11 Next page →
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-02-01 12:06 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <8OCdnQP4Cs2C4rTSnZ2dnUVZ_g6dnZ2d@supernews.com> |
| In reply to | #9351 |
Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote: > Andrew Haley <andrew29@littlepinkcloud.invalid> writes: >>> I think that the iterator (FIRST-X NEXT-X) approach is not more >>> powerful if the iterator state is a "bunch of stuff of indeterminate >>> size on the return stack". >> >>Well, I think it is more powerful, at least in the strict technical >>sense, because it's easy to use such a wordset to write >>TRAVERSE-WORDLIST; the reverse is not true, as far as I can see. > > Yes, at least without additional capabilities (if we add pipelining, > we can create FIRST-X NEXT-X from TRAVERSE-X just as easily as the > other way round). Pipelining? > But as far as the applications/tools that can be written with these > approaches are concerned, and how easy it is to write them, I don't > see any difference in power (apart from the obvious syntactical > differences). Fair enough. > I also don't see any advantage for the iterator approach when it comes > to concurrent programming. If the words protect against race > conditions in some way (locks, transactional memory, whatever), then > every style will be somewhat ok (although there are some issues that > could only be protected against by locking the whole wordlist during > the whole traversal). If they don't, then no style will work in > concurrent programs. I think that concurrency is a red herring. If the dictionary beging traversed is changed (with FORGET, MARKER, etc.) in some other thread or in this one, then the traversal won't work. All of your scratch data during traversal are thread-local anyway. >>> And it's not going to be more space-efficient, and at least in the >>> case of wordlists, not more time-efficient on many implementations >>> if the state is represented on the return stack. The biggest >>> disadvantage I see with this approach is, that a program that needs >>> to traverse a wordlist with this approach will have more code which >>> creates more potential for errors, and that is not offset by being >>> more powerful; essentially, there will be pretty much only one way >>> of using these words correctly, but you have to write many >>> additional words to achieve it. >> >>They're more or less equivalent to the <WRAPPER wrapped code WRAPPER> >>approach above, but with a little more flexibility. > > I don't see any additional flexibility. Any additional flexibility > that approach might have in principle is eliminated by making the > iterator state a "bunch of stuff of indeterminate size on the return > stack". And I don't see a way to make it more flexible without > restricting the wordlist implementations, adding a bunch of > complications, or both. > >>The interesting question is whether you could save the state somewhere >>and return to it later, as Aleksej suggested. > > Not if it is a "bunch of stuff of indeterminate size on the return > stack". Why not? I can immediately think of some ways to do it. NR>, for example. Not that that's necessarily a good model, but it would work. > And even if we could solve the problem of dealing with the iterator > state portably, is that capability really worth the implementation > complexity (which can be considerable for some wordlist data > structures)? Is it useful in the real world? That's the question we need to answer, and one that can only be answered by implementations. I've been kicking one around, but haven't come up with anything satisfactory. >>> The macro approach is closer in advantages and disadvantages to the >>> xt-passing approach IMO, but there are some differences: It cannot >>> be used interpretively, and a simple implementation will be less >>> space-efficient and more time-efficient. >> >>Less space-efficient? Why so? > > Because > > \ ... > ['] word wrapper > \ ... > > typically takes less space than what "<wrapper code wrapper>" expands > to, which, in the simplest case, is something like > > wrapper1 begin > wrapper2 while > code > wrapper3 > repeat Oh, I see: you mean code space efficient. I was thinking data space, so was baffled. > AFAIK no serious Forth system makes the mistake of implementing > wordlists as trees, but some here praise standard Forth for enabling > different implementation approaches, so maybe we should also consider > how the three approaches would look there; and it seems to me that the > xt-passing approach will be much easier to implement there than the > other two. Indeed, that is an advantage of using a callback. However, a tree traversal is at least possible using either method; maybe the ease of doing it isn't such a huge issue on a system that probabky will never exist. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2012-02-02 12:40 +0000 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <2012Feb2.134035@mips.complang.tuwien.ac.at> |
| In reply to | #9352 |
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>> Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>>>> I think that the iterator (FIRST-X NEXT-X) approach is not more
>>>> powerful if the iterator state is a "bunch of stuff of indeterminate
>>>> size on the return stack".
>>>
>>>Well, I think it is more powerful, at least in the strict technical
>>>sense, because it's easy to use such a wordset to write
>>>TRAVERSE-WORDLIST; the reverse is not true, as far as I can see.
>>
>> Yes, at least without additional capabilities (if we add pipelining,
>> we can create FIRST-X NEXT-X from TRAVERSE-X just as easily as the
>> other way round).
>
>Pipelining?
Several tasks communicaing through a pipeline. Here, FIRST-X would create
a task that performs a TRAVERSE-X and outputs the results to the
current task (that performs the FIRST-X), and reads the first result
from the other task; NEXT-X reads another result from the TRAVERSE-X
task. Here the stats of the iterator would be in the other task, and
if you can save and duplicate the task state, you can even do the
"save and return" you desire.
>I think that concurrency is a red herring. If the dictionary beging
>traversed is changed (with FORGET, MARKER, etc.) in some other thread
>or in this one, then the traversal won't work.
Yes.
>>>The interesting question is whether you could save the state somewhere
>>>and return to it later, as Aleksej suggested.
>>
>> Not if it is a "bunch of stuff of indeterminate size on the return
>> stack".
>
>Why not? I can immediately think of some ways to do it. NR>, for
>example. Not that that's necessarily a good model, but it would work.
I understood that you meant something like a loop-sys, for which NR>
does not work, because there is no n.
Sure, one could make it somewhat more determinate and manipulatable by
adding an "n" that specifies the size, but that would cause additional
overhead in space and time for every usage, for a questionable
benefit.
>> AFAIK no serious Forth system makes the mistake of implementing
>> wordlists as trees, but some here praise standard Forth for enabling
>> different implementation approaches, so maybe we should also consider
>> how the three approaches would look there; and it seems to me that the
>> xt-passing approach will be much easier to implement there than the
>> other two.
>
>Indeed, that is an advantage of using a callback. However, a tree
>traversal is at least possible using either method; maybe the ease of
>doing it isn't such a huge issue on a system that probabky will never
>exist.
Trees are an extreme example, but for anything more complex than a
linked list, it is easier to write a traversal word than FIRST-X
NEXT-X words (especially in the absence of pipelining). And more
complex data structures than linked lists do exist for wordlists in
real systems.
- 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 2011: http://www.euroforth.org/ef11/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-02-02 08:41 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <6c2dnfUvCOEXPbfSnZ2dnUVZ_g6dnZ2d@supernews.com> |
| In reply to | #9358 |
Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote: > Andrew Haley <andrew29@littlepinkcloud.invalid> writes: >>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote: >>> Andrew Haley <andrew29@littlepinkcloud.invalid> writes: >>>>> I think that the iterator (FIRST-X NEXT-X) approach is not more >>>>> powerful if the iterator state is a "bunch of stuff of indeterminate >>>>> size on the return stack". >>>> >>>>Well, I think it is more powerful, at least in the strict technical >>>>sense, because it's easy to use such a wordset to write >>>>TRAVERSE-WORDLIST; the reverse is not true, as far as I can see. >>> >>> Yes, at least without additional capabilities (if we add pipelining, >>> we can create FIRST-X NEXT-X from TRAVERSE-X just as easily as the >>> other way round). >> >>Pipelining? > > Several tasks communicating through a pipeline. I see. >>>>The interesting question is whether you could save the state somewhere >>>>and return to it later, as Aleksej suggested. >>> >>> Not if it is a "bunch of stuff of indeterminate size on the return >>> stack". >> >>Why not? I can immediately think of some ways to do it. NR>, for >>example. Not that that's necessarily a good model, but it would work. > > I understood that you meant something like a loop-sys, for which NR> > does not work, because there is no n. > > Sure, one could make it somewhat more determinate and manipulatable by > adding an "n" that specifies the size, but that would cause additional > overhead in space and time for every usage, for a questionable > benefit. That's right. So, something (perhaps along the same lines as NR>) that transfers the state either to the data stack or memory is fairly easy to envisage. >>> AFAIK no serious Forth system makes the mistake of implementing >>> wordlists as trees, but some here praise standard Forth for enabling >>> different implementation approaches, so maybe we should also consider >>> how the three approaches would look there; and it seems to me that the >>> xt-passing approach will be much easier to implement there than the >>> other two. >> >>Indeed, that is an advantage of using a callback. However, a tree >>traversal is at least possible using either method; maybe the ease of >>doing it isn't such a huge issue on a system that probably will never >>exist. > > Trees are an extreme example, but for anything more complex than a > linked list, it is easier to write a traversal word than FIRST-X > NEXT-X words (especially in the absence of pipelining). You may well be right, but I don't immediately understand why, given that they're doing almost the same thing. Once I get a moment (from preparing a presentation at FOSDEM this weekend) I'll try to put together an example. I'm not totally fixed on this idea, but I think it's so interesting that it deserves proper investigation. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | BruceMcF <agila61@netscape.net> |
|---|---|
| Date | 2012-02-02 08:34 -0800 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <081b85cf-5d20-47aa-af3c-e8704b0350c8@v6g2000pba.googlegroups.com> |
| In reply to | #9359 |
On Feb 2, 9:41 am, Andrew Haley <andre...@littlepinkcloud.invalid> wrote: > > Trees are an extreme example, but for anything more complex than a > > linked list, it is easier to write a traversal word than FIRST-X > > NEXT-X words (especially in the absence of pipelining). > You may well be right, but I don't immediately understand why, given > that they're doing almost the same thing. But the traversal is doing it as a self-contained bounded process, and NEXT-x is doing it as discrete steps. If the simplest traversal involves a do-loop, for example, then the processing by NEXT-x will not have that option available to it.
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2012-02-02 15:55 +0000 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <2012Feb2.165508@mips.complang.tuwien.ac.at> |
| In reply to | #9359 |
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>> Sure, one could make it somewhat more determinate and manipulatable by
>> adding an "n" that specifies the size, but that would cause additional
>> overhead in space and time for every usage, for a questionable
>> benefit.
>
>That's right. So, something (perhaps along the same lines as NR>)
>that transfers the state either to the data stack or memory is fairly
>easy to envisage.
Yes. If we want to use a generic word like NR>, we incur the overhead
of including some meta-data as described above.
OTOH, if we want to avoid that overhead (if possible), we would need a
set of these words for every traversal. So we might have FIRST-X
NEXT-X DROP-X X! X@.
Neither option looks attractive to me.
>> Trees are an extreme example, but for anything more complex than a
>> linked list, it is easier to write a traversal word than FIRST-X
>> NEXT-X words (especially in the absence of pipelining).
>
>You may well be right, but I don't immediately understand why,
For anything more complex (e.g., hash tables with external chaining),
the straightforward control structure for tranversal is something
other than a single loop (a nested loop for hash tables with external
chaining, a recursive walk for trees); but FIRST-X NEXT-X is used in a
single loop. Overcoming this mismatch introduces complexity and
overhead: you have to represent the state of the loops explicitly as
some data structure, and provide for corner cases (like the end of one
external chain).
>given
>that they're doing almost the same thing. Once I get a moment (from
>preparing a presentation at FOSDEM this weekend) I'll try to put
>together an example. I'm not totally fixed on this idea, but I think
>it's so interesting that it deserves proper investigation.
If you are interested in that direction, pipelines/coroutines are a
promising feature. They allow to implement iterators without having
to manually turn the control structure into data, and they are useful
for other purposes, too.
- 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 2011: http://www.euroforth.org/ef11/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-02-02 11:20 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <z9CdnVQcjZxFWLfSnZ2dnUVZ_q-dnZ2d@supernews.com> |
| In reply to | #9361 |
Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote: > Andrew Haley <andrew29@littlepinkcloud.invalid> writes: >>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote: >>> Sure, one could make it somewhat more determinate and manipulatable by >>> adding an "n" that specifies the size, but that would cause additional >>> overhead in space and time for every usage, for a questionable >>> benefit. >> >>That's right. So, something (perhaps along the same lines as NR>) >>that transfers the state either to the data stack or memory is fairly >>easy to envisage. > > Yes. If we want to use a generic word like NR>, we incur the overhead > of including some meta-data as described above. > > OTOH, if we want to avoid that overhead (if possible), we would need a > set of these words for every traversal. So we might have FIRST-X > NEXT-X DROP-X X! X@. That seems like really serious overkill. Surely all you need are words to save and restore the state. > Neither option looks attractive to me. > >>> Trees are an extreme example, but for anything more complex than a >>> linked list, it is easier to write a traversal word than FIRST-X >>> NEXT-X words (especially in the absence of pipelining). >> >>You may well be right, but I don't immediately understand why, > > For anything more complex (e.g., hash tables with external chaining), > the straightforward control structure for tranversal is something > other than a single loop (a nested loop for hash tables with external > chaining, a recursive walk for trees); but FIRST-X NEXT-X is used in a > single loop. Overcoming this mismatch introduces complexity and > overhead: you have to represent the state of the loops explicitly as > some data structure, and provide for corner cases (like the end of one > external chain). True, there are two nested loops rather than two or three saved values, but otherwise I don't think it makes an enormous difference. And you have the advantage of not having to pass a flag in order to exit the iteration or call EXECUTE. In the TRAVERSE-WORDLIST proposal you have to take all the loop control data that are on the data stack and push them onto the return stack. You have to do this because you want access to the user's stack. Anyway, as I said, I'll try it. >>given that they're doing almost the same thing. Once I get a moment >>(from preparing a presentation at FOSDEM this weekend) I'll try to >>put together an example. I'm not totally fixed on this idea, but I >>think it's so interesting that it deserves proper investigation. > > If you are interested in that direction, pipelines/coroutines are a > promising feature. They allow to implement iterators without having > to manually turn the control structure into data, and they are useful > for other purposes, too. Well yes, but that's a rather heavyweight solution without already having coroutines in standard Forth. I don't think it's at all practical for this problem. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2012-02-03 15:12 +0000 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <2012Feb3.161245@mips.complang.tuwien.ac.at> |
| In reply to | #9362 |
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>> OTOH, if we want to avoid that overhead (if possible), we would need a
>> set of these words for every traversal. So we might have FIRST-X
>> NEXT-X DROP-X X! X@.
>
>That seems like really serious overkill. Surely all you need are
>words to save and restore the state.
That's X! and X@. You need FIRST-X to start a traversal and NEXT-X to
get the next X. Finally, since the state of the iterator is a "bunch
of stuff of indeterminate size on the return stack", we need DROP-X to
get rid of it when we finish (prematurely or not). And we actually
also need a way to get the buffer size for X!, maybe X-SIZE. That's
the minimum if we want to take this approach, without adding dynamic
meta-data, and want to be able to save the state and return to it
later. So the minimum is: FIRST-X NEXT-X DROP-X X-SIZE X! X@.
>> For anything more complex (e.g., hash tables with external chaining),
>> the straightforward control structure for tranversal is something
>> other than a single loop (a nested loop for hash tables with external
>> chaining, a recursive walk for trees); but FIRST-X NEXT-X is used in a
>> single loop. Overcoming this mismatch introduces complexity and
>> overhead: you have to represent the state of the loops explicitly as
>> some data structure, and provide for corner cases (like the end of one
>> external chain).
>
>True, there are two nested loops rather than two or three saved
>values, but otherwise I don't think it makes an enormous difference.
>And you have the advantage of not having to pass a flag in order to
>exit the iteration or call EXECUTE. In the TRAVERSE-WORDLIST proposal
>you have to take all the loop control data that are on the data stack
>and push them onto the return stack. You have to do this because you
>want access to the user's stack.
Same or worse for the iterator approach. Worse, because the loop
control data for DO loops is not on the data stack while executing the
loop, but the iterator will not be able to profit from the special
care that Forth compilers expend on DO loops.
The EXECUTE overhead, yes. But on simple systems it's relatively
small, and on sophisticated systems, the inliner can eliminate it (at
the cost of increasing the code size to something similar to the
iterator approach).
>> If you are interested in that direction, pipelines/coroutines are a
>> promising feature. They allow to implement iterators without having
>> to manually turn the control structure into data, and they are useful
>> for other purposes, too.
>
>Well yes, but that's a rather heavyweight solution without already
>having coroutines in standard Forth. I don't think it's at all
>practical for this problem.
It could be a long-term perspective: If you really want the iterator
approach, but the majority goes with xt-passing, not all is lost.
- 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 2011: http://www.euroforth.org/ef11/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-02-03 10:33 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <fY2dndu_tYHtkbHSnZ2dnUVZ_v2dnZ2d@supernews.com> |
| In reply to | #9363 |
Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote: >> >>True, there are two nested loops rather than two or three saved >>values, but otherwise I don't think it makes an enormous difference. >>And you have the advantage of not having to pass a flag in order to >>exit the iteration or call EXECUTE. In the TRAVERSE-WORDLIST proposal >>you have to take all the loop control data that are on the data stack >>and push them onto the return stack. You have to do this because you >>want access to the user's stack. > > Same or worse for the iterator approach. Worse, because the loop > control data for DO loops is not on the data stack while executing the > loop, but the iterator will not be able to profit from the special > care that Forth compilers expend on DO loops. Why not? It's not as if any of this has to be written in Standard Forth. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2012-02-03 16:48 +0000 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <2012Feb3.174828@mips.complang.tuwien.ac.at> |
| In reply to | #9364 |
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>> Worse, because the loop
>> control data for DO loops is not on the data stack while executing the
>> loop, but the iterator will not be able to profit from the special
>> care that Forth compilers expend on DO loops.
>
>Why not? It's not as if any of this has to be written in Standard
>Forth.
First, because compiler writers will expend more care for relatively
common cases like DO loops than rarer ones like iterators over X.
In addition, there are also limited resources in hardware. Many Forth
systems dedicate a register to DO loops. There is a very limited
number of registers in most architectures, so they cannot do this for
all iterators, probably not even the most frequently used ones.
- 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 2011: http://www.euroforth.org/ef11/
[toc] | [prev] | [next] | [standalone]
| From | Peter Fälth <peter.falth@tin.it> |
|---|---|
| Date | 2012-02-03 08:07 -0800 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <24ef4328-4c63-4dba-9854-e3ccfdd0a579@o13g2000vbf.googlegroups.com> |
| In reply to | #9363 |
On Feb 3, 5:12 pm, an...@mips.complang.tuwien.ac.at (Anton Ertl) wrote: > Andrew Haley <andre...@littlepinkcloud.invalid> writes: > >Anton Ertl <an...@mips.complang.tuwien.ac.at> wrote: > >> OTOH, if we want to avoid that overhead (if possible), we would need a > >> set of these words for every traversal. So we might have FIRST-X > >> NEXT-X DROP-X X! X@. > > >That seems like really serious overkill. Surely all you need are > >words to save and restore the state. > > That's X! and X@. You need FIRST-X to start a traversal and NEXT-X to > get the next X. Finally, since the state of the iterator is a "bunch > of stuff of indeterminate size on the return stack", we need DROP-X to > get rid of it when we finish (prematurely or not). And we actually > also need a way to get the buffer size for X!, maybe X-SIZE. That's > the minimum if we want to take this approach, without adding dynamic > meta-data, and want to be able to save the state and return to it > later. So the minimum is: FIRST-X NEXT-X DROP-X X-SIZE X! X@. Why not use the file approach OPEN-WID ( wid -- wt ) \ wt=handle to wid READ-WID ( wt -- nt ) \ nt = 0 indicates end of wid CLOSE-WID ( wt -- ) Could be easily implemented using TRAVERSE-WORDLIST BR Peter Fälth > > > > > > > > > > >> For anything more complex (e.g., hash tables with external chaining), > >> the straightforward control structure for tranversal is something > >> other than a single loop (a nested loop for hash tables with external > >> chaining, a recursive walk for trees); but FIRST-X NEXT-X is used in a > >> single loop. Overcoming this mismatch introduces complexity and > >> overhead: you have to represent the state of the loops explicitly as > >> some data structure, and provide for corner cases (like the end of one > >> external chain). > > >True, there are two nested loops rather than two or three saved > >values, but otherwise I don't think it makes an enormous difference. > >And you have the advantage of not having to pass a flag in order to > >exit the iteration or call EXECUTE. In the TRAVERSE-WORDLIST proposal > >you have to take all the loop control data that are on the data stack > >and push them onto the return stack. You have to do this because you > >want access to the user's stack. > > Same or worse for the iterator approach. Worse, because the loop > control data for DO loops is not on the data stack while executing the > loop, but the iterator will not be able to profit from the special > care that Forth compilers expend on DO loops. > > The EXECUTE overhead, yes. But on simple systems it's relatively > small, and on sophisticated systems, the inliner can eliminate it (at > the cost of increasing the code size to something similar to the > iterator approach). > > >> If you are interested in that direction, pipelines/coroutines are a > >> promising feature. They allow to implement iterators without having > >> to manually turn the control structure into data, and they are useful > >> for other purposes, too. > > >Well yes, but that's a rather heavyweight solution without already > >having coroutines in standard Forth. I don't think it's at all > >practical for this problem. > > It could be a long-term perspective: If you really want the iterator > approach, but the majority goes with xt-passing, not all is lost. > > - 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 2011:http://www.euroforth.org/ef11/
[toc] | [prev] | [next] | [standalone]
| From | BruceMcF <agila61@netscape.net> |
|---|---|
| Date | 2012-01-31 09:36 -0800 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <ff276c76-e0ae-465d-a1dd-a8b82ab40f69@t8g2000yqg.googlegroups.com> |
| In reply to | #9329 |
On Jan 31, 11:48 am, Andrew Haley <andre...@littlepinkcloud.invalid> wrote: > BruceMcF <agil...@netscape.net> wrote: >> On Jan 31, 11:18?am, Andrew Haley <andre...@littlepinkcloud.invalid> >> wrote: >>> I'm wondering if you should think a bit more about Aleksej Saushev's >>> suggestion. ?Having something along the lines he suggests is more >>> powerful and may be more efficient, too, because you're not having >>> to re-execute the user supplied word for every word in the >>> dictionary. >> Offset by the fact that a step processing iterator may not be the >> most efficient wordlist traversal for some wordlist implementations. > Trees, perhaps? Maybe so. >> ?I think it would be more idiomatic Forth, and read better. >> Given that this general approach turns out to be an existing >> operation in a number of implementations, and that they can in >> general be exported as TRAVERSE-WORDLIST with a small wrapper, which >> is not true for a step iterator ... I don't see an either/or. >> For a step iterator, it is important that it not be assumed that >> state can be efficiently inferred from nt alone ~ the iterator >> ought to be a double, eg ( wt nt ) as wordlist state token and name >> entry token. >> first-name ( wid -- wt nt flag ) >> next-name ( wt1 nt1 -- wt2 nt2 flag ) > The iterator should, IMO, be a bunch of stuff of indeterminate size on > the return stack. In what way is that an atomic iterator? If the iterator is a bunch of stuff of indeterminate size, how do you do a bit of it now, then set it aside, and then do a bit more of it later, as Aleksej Saushev suggested we ought to be able to do? Rather than an atomic iterator, that would seem to be wordlist traversal as structured compilation: ( wid) BEGIN-WORDLIST (nt_i ) ... WHILE ... REPEAT
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-01-31 12:05 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <YfednaM8dszvsLXSnZ2dnUVZ_sudnZ2d@supernews.com> |
| In reply to | #9333 |
BruceMcF <agila61@netscape.net> wrote: > On Jan 31, 11:48?am, Andrew Haley <andre...@littlepinkcloud.invalid> > wrote: > >> BruceMcF <agil...@netscape.net> wrote: > >>> For a step iterator, it is important that it not be assumed that >>> state can be efficiently inferred from nt alone ~ the iterator >>> ought to be a double, eg ( wt nt ) as wordlist state token and name >>> entry token. > >>> ?first-name ( wid -- wt nt flag ) >>> ?next-name ( wt1 nt1 -- wt2 nt2 flag ) > >> The iterator should, IMO, be a bunch of stuff of indeterminate size on >> the return stack. > > In what way is that an atomic iterator? I didn't say it was. What does atomicity have to do with any of this? > If the iterator is a bunch of stuff of indeterminate size, how do > you do a bit of it now, then set it aside, and then do a bit more of > it later, as Aleksej Saushev suggested we ought to be able to do? You'd need to be able to take the "stuff" off the return stack and put it somewhere; perhaps a better design would be to have the iterator in memory, but I'm not exactly sure where you'd put it. The data stack is obviously an alternative, but that's where the user wants to put their data. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | BruceMcF <agila61@netscape.net> |
|---|---|
| Date | 2012-01-31 10:33 -0800 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <f655aaab-5bde-4eb2-a5d6-52a7718014a5@x19g2000yqh.googlegroups.com> |
| In reply to | #9339 |
On Jan 31, 1:05 pm, Andrew Haley <andre...@littlepinkcloud.invalid> wrote: > BruceMcF <agil...@netscape.net> wrote: > > On Jan 31, 11:48?am, Andrew Haley > > In what way is that an atomic iterator? > I didn't say it was. What does atomicity have to do with any > of this? I took it from the fact that you suggested following up Aleksej Saushev's suggestion that you were referring to an atomic traversal ... ... because that's what what Aleksej Saushev was talking about: "This severely limits what can be done during traversal. Unfinished traversals happen when you work on mobile phone: you create iterator, look at head of wordlist, do something, then move further down the list. If you want "atomic" traversal ..." The additional *power* of an atomic traversal *over* TRAVERSE-WORDLIST is *precisely* the additional ability to stop doing the traversal for an indefinite period and then pick it up again when you feel like it. To do that you need to define the "atom" ~ it seems as if rather than being an atomic traversal, "an item of undefined size on the return stack" is refraining from defining the atom, and by the same token does not offer any additional *power* than the TRAVERSE-WORDLIST approach which is an already established common practice.
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2012-01-31 16:50 +0000 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <2012Jan31.175009@mips.complang.tuwien.ac.at> |
| In reply to | #9326 |
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>I'm wondering if you should think a bit more about Aleksej Saushev's
>suggestion.
Which one? Msg-Id or URL? I looked for some time, but did not find it.
>Having something along the lines he suggests is more
>powerful and may be more efficient, too, because you're not having to
>re-execute the user supplied word for every word in the dictionary. I
>think it would be more idiomatic Forth, and read better.
The style of the proposed word is current practice on several systems,
and has the advantage of abstracting away implementation details.
But if there is something better, we should certainly take a look at it.
>I still think this RFD is premature, and it would be a Bad Thing to
>standardize TRAVERSE-WORDLIST when there is potentially something much
>better. I'm going to kick around a design.
I think it's certainly a good thing to work out a common interface
now, rather than adding additional similar, but slightly different
interfaces in systems like Gforth that only have low-level words for
this stuff up to now and want to add a higher-level interface.
- 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 2011: http://www.euroforth.org/ef11/
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-01-31 11:07 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <Mv2dnbEAJrZEgrXSnZ2dnUVZ_qednZ2d@supernews.com> |
| In reply to | #9330 |
Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote: > Andrew Haley <andrew29@littlepinkcloud.invalid> writes: >>I'm wondering if you should think a bit more about Aleksej Saushev's >>suggestion. > > Which one? Msg-Id or URL? I looked for some time, but did not find it. https://groups.google.com/group/comp.lang.forth/msg/bba9455be515eaf9?hl=en >>Having something along the lines he suggests is more powerful and >>may be more efficient, too, because you're not having to re-execute >>the user supplied word for every word in the dictionary. I think it >>would be more idiomatic Forth, and read better. > > The style of the proposed word is current practice on several systems, > and has the advantage of abstracting away implementation details. > > But if there is something better, we should certainly take a look at it. > >>I still think this RFD is premature, and it would be a Bad Thing to >>standardize TRAVERSE-WORDLIST when there is potentially something much >>better. I'm going to kick around a design. > > I think it's certainly a good thing to work out a common interface > now, rather than adding additional similar, but slightly different > interfaces in systems like Gforth that only have low-level words for > this stuff up to now and want to add a higher-level interface. Well, yes, but not if it is to be set in stone; it's far too soon for that. The requirement was only mentioned here a few weeks ago, and we're already at the RFD stage. This is a rather unseemly hurry. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | Alex McDonald <blog@rivadpm.com> |
|---|---|
| Date | 2012-01-31 09:36 -0800 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <cd18338e-ec7c-431e-8564-ccb549ff5500@z31g2000vbt.googlegroups.com> |
| In reply to | #9331 |
On Jan 31, 5:07 pm, Andrew Haley <andre...@littlepinkcloud.invalid> wrote: > Anton Ertl <an...@mips.complang.tuwien.ac.at> wrote: > > Andrew Haley <andre...@littlepinkcloud.invalid> writes: > >>I'm wondering if you should think a bit more about Aleksej Saushev's > >>suggestion. > > > Which one? Msg-Id or URL? I looked for some time, but did not find it. > > https://groups.google.com/group/comp.lang.forth/msg/bba9455be515eaf9?... > > > > > > > > > > >>Having something along the lines he suggests is more powerful and > >>may be more efficient, too, because you're not having to re-execute > >>the user supplied word for every word in the dictionary. I think it > >>would be more idiomatic Forth, and read better. I'd reiterate that there's no common practice, nor does there appear to be an implementation, of Aleksej's proposal. According to at least a few here, it's not the business of the standard to be inventing practice, but rather to standardise what is common practice. > > > The style of the proposed word is current practice on several systems, > > and has the advantage of abstracting away implementation details. > > > But if there is something better, we should certainly take a look at it. > > >>I still think this RFD is premature, and it would be a Bad Thing to > >>standardize TRAVERSE-WORDLIST when there is potentially something much > >>better. I'm going to kick around a design. > > > I think it's certainly a good thing to work out a common interface > > now, rather than adding additional similar, but slightly different > > interfaces in systems like Gforth that only have low-level words for > > this stuff up to now and want to add a higher-level interface. > > Well, yes, but not if it is to be set in stone; it's far too soon for > that. The requirement was only mentioned here a few weeks ago, and > we're already at the RFD stage. This is a rather unseemly hurry. > > Andrew. I'm in no hurry to get it wrong. RfDs have been known to undergo many revisions, and some are dropped entirely. For example, the Xchar wordset (a much more complex beast admittedly) went through 4 revisions and took 5 years from the initial RfD; the FILE-SOURCE etc RfD was "withdrawn because of mostly negative responses". http://www.forth200x.org/rfds.html Moving an RfD for debate on the floor of the house (if you'll excuse the political metaphor) has raised some interesting observations, some concerns, and brought to light previously unidentified common practice. For that reason alone I believe it's been valuable.
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-01-31 12:09 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <YfednaI8dszIs7XSnZ2dnUVZ_sudnZ2d@supernews.com> |
| In reply to | #9334 |
Alex McDonald <blog@rivadpm.com> wrote: > On Jan 31, 5:07?pm, Andrew Haley <andre...@littlepinkcloud.invalid> > wrote: >> Anton Ertl <an...@mips.complang.tuwien.ac.at> wrote: >> >> >>Having something along the lines he suggests is more powerful and >> >>may be more efficient, too, because you're not having to re-execute >> >>the user supplied word for every word in the dictionary. I think it >> >>would be more idiomatic Forth, and read better. > > I'd reiterate that there's no common practice, nor does there appear > to be an implementation, of Aleksej's proposal. According to at least > a few here, it's not the business of the standard to be inventing > practice, but rather to standardise what is common practice. Indeed, and I think there's a fair bit of evidence to support that. (83-Standard DO-LOOPs. Aieeeee...) >> > I think it's certainly a good thing to work out a common interface >> > now, rather than adding additional similar, but slightly different >> > interfaces in systems like Gforth that only have low-level words for >> > this stuff up to now and want to add a higher-level interface. >> >> Well, yes, but not if it is to be set in stone; it's far too soon for >> that. The requirement was only mentioned here a few weeks ago, and >> we're already at the RFD stage. This is a rather unseemly hurry. > > I'm in no hurry to get it wrong. RfDs have been known to undergo many > revisions, and some are dropped entirely. For example, the Xchar > wordset (a much more complex beast admittedly) went through 4 > revisions and took 5 years from the initial RfD; the FILE-SOURCE etc > RfD was "withdrawn because of mostly negative responses". > http://www.forth200x.org/rfds.html > > Moving an RfD for debate on the floor of the house (if you'll excuse > the political metaphor) has raised some interesting observations, some > concerns, and brought to light previously unidentified common > practice. For that reason alone I believe it's been valuable. OK. So, I think we should kick this one around a bit. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2012-01-31 17:33 +0000 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <2012Jan31.183347@mips.complang.tuwien.ac.at> |
| In reply to | #9331 |
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>Anton Ertl <anton@mips.complang.tuwien.ac.at> wrote:
>> I think it's certainly a good thing to work out a common interface
>> now, rather than adding additional similar, but slightly different
>> interfaces in systems like Gforth that only have low-level words for
>> this stuff up to now and want to add a higher-level interface.
>
>Well, yes, but not if it is to be set in stone; it's far too soon for
>that. The requirement was only mentioned here a few weeks ago, and
>we're already at the RFD stage. This is a rather unseemly hurry.
An RfD is just a request for discussion. Some lie around for years
before being standardized, if at all. And Alex has not even made it a
fully formal RfD (he has not submitted it to the Forth200x mailing
list). And the requirement was already discussed 20 years ago,
although it has not had much discussion in the meantime.
- 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 2011: http://www.euroforth.org/ef11/
[toc] | [prev] | [next] | [standalone]
| From | BruceMcF <agila61@netscape.net> |
|---|---|
| Date | 2012-01-31 09:29 -0800 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <b3593703-ed09-4e17-bdcc-f4ec974d1c7d@j15g2000yqb.googlegroups.com> |
| In reply to | #9331 |
On Jan 31, 12:07 pm, Andrew Haley <andre...@littlepinkcloud.invalid> wrote: > >>Having something along the lines he suggests is more powerful and > >>may be more efficient, too, because you're not having to re-execute > >>the user supplied word for every word in the dictionary. I think it > >>would be more idiomatic Forth, and read better. >> The style of the proposed word is current practice on several >> systems, and has the advantage of abstracting away implementation >> details. >> But if there is something better, we should certainly take a look at >> it. >>> I still think this RFD is premature, and it would be a Bad Thing to >>> standardize TRAVERSE-WORDLIST when there is potentially something >>> much better. I'm going to kick around a design. >> I think it's certainly a good thing to work out a common interface >> now, rather than adding additional similar, but slightly different >> interfaces in systems like Gforth that only have low-level words for >> this stuff up to now and want to add a higher-level interface. > Well, yes, but not if it is to be set in stone; it's far too soon for > that. The requirement was only mentioned here a few weeks ago, and > we're already at the RFD stage. This is a rather unseemly hurry. What is the standard waiting period to be between noticing that something is in fact a quite common practice and issuing a request for discussion on a proposed standard version of the same thing?
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-01-31 12:17 -0600 |
| Subject | Re: RfD: rev 1 of TRAVERSE-WORDLIST proposal |
| Message-ID | <a9qdnRVCoMmArbXSnZ2dnUVZ_qidnZ2d@supernews.com> |
| In reply to | #9340 |
BruceMcF <agila61@netscape.net> wrote: > What is the standard waiting period to be between noticing that > something is in fact a quite common practice and issuing a request > for discussion on a proposed standard version of the same thing? That's a fair point, although I can't see anything quite like it in SwiftForth, but of course there is something related. It just seemed to me like a request came out of the blue and the immediate knee-jerk response was "Yipppee! Something we can standardize! Let's do it!" I'm just saying "Guys, let's think about this a bit. Maybe we don't need it. Even if we do, maybe there is a better way to do it." Andrew.
[toc] | [prev] | [next] | [standalone]
Page 6 of 11 — ← Prev page 1 … 4 5 [6] 7 8 … 11 Next page →
Back to top | Article view | comp.lang.forth
csiph-web