Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #54064 > unrolled thread
| Started by | "HAA" <someone@microsoft.com> |
|---|---|
| First post | 2017-01-17 12:17 +1100 |
| Last post | 2017-03-26 01:52 -0700 |
| Articles | 20 on this page of 269 — 27 participants |
Back to article view | Back to comp.lang.forth
EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-17 12:17 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-16 18:27 -0800
Re: EXIT THEN Pablo Hugo Reda <pabloreda@gmail.com> - 2017-01-16 18:28 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-16 20:56 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-19 13:05 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-18 23:29 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-20 11:46 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-19 22:28 -0500
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-22 18:45 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-25 09:57 +1100
Re: EXIT THEN JennyB <jennybrien@googlemail.com> - 2017-01-25 23:56 -0800
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-01-26 03:35 -0600
Re: EXIT THEN Coos Haak <htrofhc@gmail.com> - 2017-01-26 11:31 +0100
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-01-26 11:07 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-05 19:15 +1100
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-02-07 17:54 +0000
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-02-07 21:14 +0000
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-02-13 16:52 +0000
Recognizer using CATCH/THROW [was Re: EXIT THEN] Alex <alex@rivadpm.com> - 2017-02-15 23:49 +0000
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] Alex <alex@rivadpm.com> - 2017-02-16 14:41 +0000
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] Alex <alex@rivadpm.com> - 2017-02-16 16:59 +0000
Recognizer using CATCH/THROW [was Re: EXIT THEN] Alex <alex@rivadpm.com> - 2017-03-11 15:05 +0000
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] Matthias Trute <matthias.trute@gmail.com> - 2017-03-13 12:37 -0700
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] Alex <alex@rivadpm.com> - 2017-03-13 21:32 +0000
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-03-14 04:42 -0500
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] Alex <alex@rivadpm.com> - 2017-03-14 11:45 +0000
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] Alex <alex@rivadpm.com> - 2017-03-14 12:41 +0000
Re: Recognizer using CATCH/THROW [was Re: EXIT THEN] albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-03-14 14:20 +0100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-02-07 16:15 -0500
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-02-13 16:49 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-08 19:43 +1100
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-02-13 16:31 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-14 11:12 +1100
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-02-15 17:22 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-17 10:16 +1100
Re: EXIT THEN JennyB <jennybrien@googlemail.com> - 2017-01-26 09:11 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-28 11:07 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-27 18:31 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-29 12:07 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-28 17:37 -0800
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-28 21:40 -0500
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-29 19:56 -0800
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-30 00:30 -0500
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-01-31 04:22 -0600
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-31 14:42 -0800
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-01-31 19:16 -0500
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-31 21:00 -0800
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-02-01 17:35 -0500
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-02-02 01:31 -0500
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-02-02 20:09 -0500
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-02 18:03 -0800
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-02-02 22:04 -0500
Re: EXIT THEN Mark Wills <markwills1970@gmail.com> - 2017-02-01 03:15 -0800
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-02-01 17:32 -0500
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-30 13:30 +0000
Re: EXIT THEN Mark Wills <markwills1970@gmail.com> - 2017-01-30 05:56 -0800
Re: EXIT THEN Howerd <howerdo@yahoo.co.uk> - 2017-01-30 12:13 -0800
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-30 22:25 +0000
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-26 10:48 +0000
Re: EXIT THEN JennyB <jennybrien@googlemail.com> - 2017-01-26 08:41 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-27 21:36 -0800
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-01-17 17:06 +0000
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-01-16 16:31 -1000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-16 20:59 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-17 06:11 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-18 10:36 +1100
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-20 07:33 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-20 23:02 +1100
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-20 13:47 +0000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-20 18:55 -0800
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-22 09:15 +0000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-22 14:30 -0800
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-22 20:58 -0500
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-23 10:47 +0000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-23 06:20 -0500
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-23 13:09 +0000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-23 14:41 -0500
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-23 20:52 +0000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-23 16:21 -0500
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-24 06:55 +0000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-24 03:56 -0500
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-24 09:46 +0000
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-22 22:38 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-23 15:09 +1100
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-23 10:16 +0000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-23 05:53 -0500
Re: EXIT THEN Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2017-01-23 12:14 +0000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-23 14:53 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-24 21:37 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-24 19:54 -0500
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-01-25 03:38 -0600
Re: EXIT THEN Mark Wills <markwills1970@gmail.com> - 2017-01-17 08:01 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-01-17 10:27 -0800
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-17 11:34 -0800
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-01-18 14:35 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-18 10:37 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-17 20:53 -0500
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-01-17 18:02 -1000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-18 00:15 -0500
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-01-17 19:34 -1000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-18 03:33 -0500
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-01-18 03:45 -0600
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-18 14:43 -0500
Re: EXIT THEN albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-01-18 13:17 +0100
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-19 13:46 +1100
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-01-18 13:56 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-19 13:04 +1100
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-01-18 18:10 -1000
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-01-19 03:51 -0600
Re: EXIT THEN hheinrich.hohl@gmail.com - 2017-01-19 02:28 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-20 22:23 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-20 13:32 -0500
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-01-20 18:18 -1000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-23 12:00 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-22 21:10 -0500
Re: EXIT THEN Mark Wills <markwills1970@gmail.com> - 2017-01-23 01:22 -0800
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-23 06:03 -0500
Re: EXIT THEN Coos Haak <htrofhc@gmail.com> - 2017-01-24 02:27 +0100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-24 04:00 -0500
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-24 07:49 -0500
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-24 20:04 -0500
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-24 20:23 -0500
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-24 21:32 -0500
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-01-24 23:04 -0500
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-25 00:45 -0500
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-01-25 07:16 +0000
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-25 02:57 -0500
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-01-25 16:55 +0000
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-01-25 09:53 -1000
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-01-26 22:40 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-26 10:55 +1100
Re: EXIT THEN JennyB <jennybrien@googlemail.com> - 2017-01-26 10:17 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-27 13:09 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-26 21:54 -0500
Re: EXIT THEN Coos Haak <htrofhc@gmail.com> - 2017-01-27 14:12 +0100
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-28 12:32 +1100
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-29 10:35 +1100
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-22 21:35 -0500
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-01-23 04:15 -0600
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-01-23 10:29 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-23 21:48 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-23 06:18 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-26 11:34 +1100
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-01-25 22:04 -0500
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-01-25 17:22 -1000
Re: EXIT THEN Mark Wills <markwills1970@gmail.com> - 2017-01-26 00:55 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-27 13:40 +1100
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-01-20 11:44 +1100
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-01-18 08:02 -0500
Re: EXIT THEN Coos Haak <htrofhc@gmail.com> - 2017-01-18 17:45 +0100
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-01-19 20:02 -0500
Re: EXIT THEN Julian Fondren <julian.fondren@gmail.com> - 2017-01-22 18:23 -0800
Re: EXIT THEN albert@cherry.spenarnc.xs4all.nl (Albert van der Horst) - 2017-02-02 12:24 +0100
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-10 12:15 +1100
Re: EXIT THEN mhx@iae.nl - 2017-02-10 10:57 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-11 12:45 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-10 18:13 -0800
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-02-11 07:55 -0500
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-02-11 13:16 +0000
Re: EXIT THEN "Elizabeth D. Rather" <erather@forth.com> - 2017-02-11 11:28 -1000
Re: EXIT THEN Paul Rubin <no.email@nospam.invalid> - 2017-02-11 13:40 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-11 18:52 -0800
Re: EXIT THEN Jan Coombs <jenfhaomndgfwutc@murmic.plus.com> - 2017-02-12 12:09 +0000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-12 07:24 -0800
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-02-12 16:42 -0500
Re: EXIT THEN Julian Fondren <julian.fondren@gmail.com> - 2017-02-12 13:52 -0800
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-02-13 00:02 -0500
Re: EXIT THEN Julian Fondren <julian.fondren@gmail.com> - 2017-02-12 21:27 -0800
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-02-13 07:53 +0000
Re: EXIT THEN Michael Barry <barrym95838@yahoo.com> - 2017-02-12 16:25 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-12 17:11 -0800
Re: EXIT THEN Michael Barry <barrym95838@yahoo.com> - 2017-02-12 18:49 -0800
Re: EXIT THEN Michael Barry <barrym95838@yahoo.com> - 2017-02-12 18:59 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-12 21:18 -0800
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-02-12 14:39 +0000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-11 18:47 -0800
Re: EXIT THEN rickman <gnuarm@gmail.com> - 2017-02-12 00:49 -0500
Re: EXIT THEN Paul Rubin <no.email@nospam.invalid> - 2017-02-11 23:07 -0800
Re: EXIT THEN Jan Coombs <jenfhaomndgfwutc@murmic.plus.com> - 2017-02-12 12:36 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-13 11:08 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-12 17:04 -0800
Re: EXIT THEN hughaguilar96@gmail.com - 2017-02-12 17:08 -0800
Re: EXIT THEN jacko <jackokring@gmail.com> - 2017-02-16 17:24 -0800
Re: EXIT THEN jacko <jackokring@gmail.com> - 2017-02-17 16:32 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-19 10:47 +1100
Re: EXIT THEN jacko <jackokring@gmail.com> - 2017-02-18 16:07 -0800
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-19 13:54 +1100
Re: EXIT THEN Heinrich Hohl <hheinrich.hohl@gmail.com> - 2017-02-17 02:40 -0800
Re: EXIT THEN Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> - 2017-02-17 19:25 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-02-19 12:36 +1100
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-20 06:32 -0700
Re: EXIT THEN Jan Coombs <jenfhaomndgfwutc@murmic.plus.com> - 2017-03-21 08:33 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-22 02:21 +1100
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 09:57 -0700
Re: EXIT THEN Coos Haak <htrofhc@gmail.com> - 2017-03-21 18:17 +0100
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 10:22 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 17:56 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 11:59 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 19:16 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 12:24 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 19:26 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 12:32 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 19:51 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 12:56 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 21:02 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 14:15 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 21:36 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 15:12 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 16:13 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 09:16 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 03:35 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 13:33 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 17:51 +0000
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-21 18:59 +0000
Re: EXIT THEN Mark Wills <markwills1970@gmail.com> - 2017-03-21 12:07 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-21 12:17 -0700
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-22 20:08 +1100
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 09:18 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-22 22:25 +1100
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 04:46 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 12:23 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 05:27 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 05:36 -0700
Re: EXIT THEN anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2017-03-22 13:14 +0000
Re: EXIT THEN Coos Haak <htrofhc@gmail.com> - 2017-03-22 13:43 +0100
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 13:04 +0000
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 11:49 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 05:24 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 13:00 +0000
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 06:12 -0700
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-22 07:00 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 07:14 -0700
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-22 10:43 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 11:09 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 18:22 +0000
Re: EXIT THEN Julian Fondren <julian.fondren@gmail.com> - 2017-03-22 11:42 -0700
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-22 15:45 -0700
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-22 15:57 -0700
Re: EXIT THEN Julian Fondren <julian.fondren@gmail.com> - 2017-03-22 16:17 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 12:03 -0700
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-03-22 14:27 -0500
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-22 14:31 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-23 14:41 +0000
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 14:57 +0000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-26 01:11 -0700
Re: EXIT THEN Ron Aaron <rambamist@gmail.com> - 2017-03-26 11:40 +0300
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-26 01:57 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-26 09:50 +0100
Re: EXIT THEN foxaudioresearch@gmail.com - 2017-03-22 09:14 -0700
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-23 00:48 +1100
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-22 13:59 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-23 09:52 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-22 16:13 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-23 14:39 +0000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-23 16:33 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-24 14:17 +0000
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-24 11:49 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-23 18:12 -0700
Re: EXIT THEN Alex <alex@rivadpm.com> - 2017-03-24 08:55 +0000
Re: EXIT THEN Andrew Haley <andrew29@littlepinkcloud.invalid> - 2017-03-24 09:14 -0500
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-25 13:00 +1100
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-24 20:25 -0700
Re: EXIT THEN Mark Wills <markwills1970@gmail.com> - 2017-03-25 02:10 -0700
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-25 12:08 -0700
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-22 06:59 -0700
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-23 09:53 +1100
Re: EXIT THEN Helmar Wodtke <helmwo@gmail.com> - 2017-03-25 07:52 -0700
Re: EXIT THEN "HAA" <someone@microsoft.com> - 2017-03-26 16:31 +1000
Re: EXIT THEN hughaguilar96@gmail.com - 2017-03-26 01:52 -0700
Page 7 of 14 — ← Prev page 1 … 5 6 [7] 8 9 … 14 Next page →
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2017-01-24 20:04 -0500 |
| Message-ID | <o68teu$qrj$1@dont-email.me> |
| In reply to | #54352 |
On 1/24/2017 7:49 AM, Alex wrote: > On 1/24/2017 04:00, rickman wrote: >> On 1/23/2017 8:27 PM, Coos Haak wrote: >>> Op Mon, 23 Jan 2017 06:03:40 -0500 schreef rickman: >>> >>>> On 1/23/2017 4:22 AM, Mark Wills wrote: >>>>> On Monday, 23 January 2017 02:10:57 UTC, rickman wrote: >>>>> <snippage> >>>>>> >>>>>> I don't see how making it >>>>>> >>>>>> 0= IF END >>>>>> >>>>>> would make the code any better. >>>>>> >>>>>> In reality these likely should have all been replaced by >>>>>> catch and throw. >>>>>> >>>>>> -- >>>>>> >>>>>> Rick C >>>>> >>>>> Just use: >>>>> >>>>> 0= ?EXIT >>>>> >>>>> (if your system has it. If not, add it. It's Forth). >>>> >>>> Yeah, that's an option. But I'm a bit confused. I thought an >>>> immediate word is one that gets executed at compile time rather >>>> than being compiled. Here is how it is defined in Win32Forth >>>> >>>> : ?EXIT IF EXIT THEN ; IMMEDIATE >>>> >>>> I wrote a test and it works, so obviously I am missing >>>> something... or a lot... >>>> >>>> If EXIT is inside a word like ?EXIT, won't it simply exit from >>>> *that* word and not the word ?EXIT is used in? >>> >>> It isn't defined like that, SEE is misleading in this case. Try >>> this: >>> >>> : ?EXIT POSTPONE IF POSTPONE EXIT POSTPONE THEN ; IMMEDIATE >> >> Ok, I guess you are right. Using locate I get this... >> >> -------------------------------------------------------------------------------------------------------------------------- >> >> >> : ?EXIT ( F1 -- ) >> -------------------------------------------------------------------------------------------------------------------------- >> >> >> \ EXIT_A >> [COMPILE] IF >> [COMPILE] EXIT >> [COMPILE] THEN ; IMMEDIATE It didn't help to put it all on a commented out line so I fixed that. I stripped away the irrelevant DOES stuff. I gather that, without analyzing how every word works, this code has the effect of inserting IF EXIT THEN into a word definition that uses the word ?EXIT. Is that correct? So it's like a macro. I have used postpone and immediate in the past, but I use this sort of stuff so seldom I never remember how it works from one time to the next and have to learn it all over again. Some years back I got advice here on how to write some defining words for simple array structures that do bounds checking on the index used. It took me a bit to fully understand what it was all doing, but I got there and built a small assortment of words to create byte and word arrays. Now when I want to add or change something I have to relearn it all again. Maybe I should make myself do that every few weeks until it is planted solidly and I no longer forget it. Repetition is a strong learning tool. -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-01-24 20:23 -0500 |
| Message-ID | <o68ujt$tmo$1@dont-email.me> |
| In reply to | #54373 |
On 1/24/2017 20:04, rickman wrote: >>> : ?EXIT ( F1 -- ) >>> -------------------------------------------------------------------------------------------------------------------------- >>> >>> >>> >>> \ EXIT_A >>> [COMPILE] IF >>> [COMPILE] EXIT >>> [COMPILE] THEN ; IMMEDIATE > > It didn't help to put it all on a commented out line so I fixed that. I > stripped away the irrelevant DOES stuff. > > I gather that, without analyzing how every word works, this code has the > effect of inserting IF EXIT THEN into a word definition that uses the > word ?EXIT. Is that correct? So it's like a macro. Yes. ?EXIT is IMMEDIATE so it executes even when the system is compiling. So : foo ?exit ; runs ?EXIT instead of compiling it, and it compiles the words IF EXIT and THEN into the definition for FOO. It's as though you had typed : foo if exit then ; -- Alex
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2017-01-24 21:32 -0500 |
| Message-ID | <o692l1$68c$2@dont-email.me> |
| In reply to | #54374 |
On 1/24/2017 8:23 PM, Alex wrote: > On 1/24/2017 20:04, rickman wrote: >>>> : ?EXIT ( F1 -- ) >>>> -------------------------------------------------------------------------------------------------------------------------- >>>> >>>> >>>> >>>> >>>> \ EXIT_A >>>> [COMPILE] IF >>>> [COMPILE] EXIT >>>> [COMPILE] THEN ; IMMEDIATE >> >> It didn't help to put it all on a commented out line so I fixed that. I >> stripped away the irrelevant DOES stuff. >> >> I gather that, without analyzing how every word works, this code has the >> effect of inserting IF EXIT THEN into a word definition that uses the >> word ?EXIT. Is that correct? So it's like a macro. > > Yes. ?EXIT is IMMEDIATE so it executes even when the system is > compiling. So > > : foo ?exit ; > > runs ?EXIT instead of compiling it, and it compiles the words IF EXIT > and THEN into the definition for FOO. It's as though you had typed > > : foo if exit then ; So how is [COMPILE] different from postpone? -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> |
|---|---|
| Date | 2017-01-24 23:04 -0500 |
| Message-ID | <20170124230415.1be78b30@_> |
| In reply to | #54375 |
On Tue, 24 Jan 2017 21:32:36 -0500 rickman <gnuarm@gmail.com> wrote: > So how is [COMPILE] different from postpone? > AIUI, POSTPONE functions as both COMPILE and [COMPILE] . I.e., you don't need to know if the word is immediate or not with POSTPONE . It will do the correct thing 99.999% of the time. See my response to Zbiggy https://groups.google.com/d/msg/comp.lang.forth/RqN6h4qNlPs/RrktBeS62cUJ Rod Pemberton
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-01-25 00:45 -0500 |
| Message-ID | <o69duk$oto$1@dont-email.me> |
| In reply to | #54376 |
On 1/24/2017 23:04, Rod Pemberton wrote: > On Tue, 24 Jan 2017 21:32:36 -0500 > will do the correct thing 99.999% of the time. Rounded up to 0 decimal places. -- Alex
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2017-01-25 07:16 +0000 |
| Message-ID | <2017Jan25.081636@mips.complang.tuwien.ac.at> |
| In reply to | #54375 |
rickman <gnuarm@gmail.com> writes:
>So how is [COMPILE] different from postpone?
"[COMPILE] +" is equivalent to "+", not to "POSTPONE +"; and likewise
for all other words with default compilation semantics (approximately
non-immediate words).
- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2016: http://www.euroforth.org/ef16/
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2017-01-25 02:57 -0500 |
| Message-ID | <o69lmp$b13$3@dont-email.me> |
| In reply to | #54378 |
On 1/25/2017 2:16 AM, Anton Ertl wrote: > rickman <gnuarm@gmail.com> writes: >> So how is [COMPILE] different from postpone? > > "[COMPILE] +" is equivalent to "+", not to "POSTPONE +"; and likewise > for all other words with default compilation semantics (approximately > non-immediate words). If "[COMPILE] +" is equivalent to "+", why would anyone use "[COMPILE] +"? Or are you saying it is only useful with immediate words? What will "postpone +" do? -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | anton@mips.complang.tuwien.ac.at (Anton Ertl) |
|---|---|
| Date | 2017-01-25 16:55 +0000 |
| Message-ID | <2017Jan25.175513@mips.complang.tuwien.ac.at> |
| In reply to | #54381 |
rickman <gnuarm@gmail.com> writes:
>On 1/25/2017 2:16 AM, Anton Ertl wrote:
>> rickman <gnuarm@gmail.com> writes:
>>> So how is [COMPILE] different from postpone?
>>
>> "[COMPILE] +" is equivalent to "+", not to "POSTPONE +"; and likewise
>> for all other words with default compilation semantics (approximately
>> non-immediate words).
>
>If "[COMPILE] +" is equivalent to "+", why would anyone use "[COMPILE]
>+"?
What makes you think that anybody uses "[COMPILE] +"?
> Or are you saying it is only useful with immediate words?
Yes.
>What will "postpone +" do?
Consider the example:
: foo postpone + ; immediate
: bar foo ;
When FOO is executed (while compiling BAR), it compiles + into BAR.
- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2016: http://www.euroforth.org/ef16/
[toc] | [prev] | [next] | [standalone]
| From | "Elizabeth D. Rather" <erather@forth.com> |
|---|---|
| Date | 2017-01-25 09:53 -1000 |
| Message-ID | <j_KdnSJNtPKynxTFnZ2dnUU7-VnNnZ2d@supernews.com> |
| In reply to | #54395 |
On 1/25/17 6:55 AM, Anton Ertl wrote: > rickman <gnuarm@gmail.com> writes: >> On 1/25/2017 2:16 AM, Anton Ertl wrote: >>> rickman <gnuarm@gmail.com> writes: >>>> So how is [COMPILE] different from postpone? >>> >>> "[COMPILE] +" is equivalent to "+", not to "POSTPONE +"; and likewise >>> for all other words with default compilation semantics (approximately >>> non-immediate words). >> >> If "[COMPILE] +" is equivalent to "+", why would anyone use "[COMPILE] >> +"? > > What makes you think that anybody uses "[COMPILE] +"? [COMPILE] was formerly the only to postpone compilation of immediate words: use COMPILE for non-immediate words, and [CPMPILE] for immediate words. This required you to know what words were immediate, and not all implementations agreed on that. Forth94 resolved the problem by adding POSTPONE. >> Or are you saying it is only useful with immediate words? > > Yes. > >> What will "postpone +" do? > > Consider the example: > > : foo postpone + ; immediate > : bar foo ; > > When FOO is executed (while compiling BAR), it compiles + into BAR. POSTPONE will defer the compilation of any word, regardless of whether it's immediate or not. Cheers, Elizabeth -- Elizabeth R. Conklin FORTH, Inc. 6080 Center Drive, Suite 600 Los Angeles, CA 90045 USA
[toc] | [prev] | [next] | [standalone]
| From | Rod Pemberton <NeedNotReplyHere@xrsevnneqk.cem> |
|---|---|
| Date | 2017-01-26 22:40 -0500 |
| Message-ID | <20170126224025.3e2a939d@_> |
| In reply to | #54399 |
On Wed, 25 Jan 2017 09:53:18 -1000 "Elizabeth D. Rather" <erather@forth.com> wrote: > On 1/25/17 6:55 AM, Anton Ertl wrote: > > rickman <gnuarm@gmail.com> writes: > >> On 1/25/2017 2:16 AM, Anton Ertl wrote: > >>> rickman <gnuarm@gmail.com> writes: > >>>> So how is [COMPILE] different from postpone? > >>> > >>> "[COMPILE] +" is equivalent to "+", not to "POSTPONE +"; and > >>> likewise for all other words with default compilation semantics > >>> (approximately non-immediate words). > >> > >> If "[COMPILE] +" is equivalent to "+", why would anyone use > >> "[COMPILE] +"? > > > > What makes you think that anybody uses "[COMPILE] +"? > He likely meant "COMPILE +", or, at least, I assumed so ... > [COMPILE] was formerly the only to postpone compilation of immediate > words: use COMPILE for non-immediate words, and [CPMPILE] for typo [COMPILE] > immediate words. This required you to know what words were immediate, > and not all implementations agreed on that. Forth94 resolved the > problem by adding POSTPONE. They should've called it COMPILES . That would've saved plenty of headaches. Rod Pemberton
[toc] | [prev] | [next] | [standalone]
| From | "HAA" <someone@microsoft.com> |
|---|---|
| Date | 2017-01-26 10:55 +1100 |
| Message-ID | <o6bdqm$1qts$1@gioia.aioe.org> |
| In reply to | #54332 |
Coos Haak wrote: > Op Mon, 23 Jan 2017 06:03:40 -0500 schreef rickman: > > > On 1/23/2017 4:22 AM, Mark Wills wrote: > >> On Monday, 23 January 2017 02:10:57 UTC, rickman wrote: > >> <snippage> > >>> > >>> I don't see how making it > >>> > >>> 0= IF END > >>> > >>> would make the code any better. > >>> > >>> In reality these likely should have all been replaced by catch and throw. > >>> > >>> -- > >>> > >>> Rick C > >> > >> Just use: > >> > >> 0= ?EXIT > >> > >> (if your system has it. If not, add it. It's Forth). > > > > Yeah, that's an option. But I'm a bit confused. I thought an immediate > > word is one that gets executed at compile time rather than being > > compiled. Here is how it is defined in Win32Forth > > > >: ?EXIT IF EXIT THEN ; IMMEDIATE > > > > I wrote a test and it works, so obviously I am missing something... or a > > lot... > > > > If EXIT is inside a word like ?EXIT, won't it simply exit from *that* > > word and not the word ?EXIT is used in? > > It isn't defined like that, SEE is misleading in this case. Try this: > > : ?EXIT POSTPONE IF POSTPONE EXIT POSTPONE THEN ; IMMEDIATE > > groet Coos It can also be written in machine code of course. There are downsides to having too many EXIT-type words (e.g. locals must deal with all of them) and how many EXIT words do you really need? ?EXIT has uses but not as many as END which will also handle the ?EXIT situations. I have no issue writing IF END because this is Forth and IF is referring to the flag on the stack, not on the word which follows.
[toc] | [prev] | [next] | [standalone]
| From | JennyB <jennybrien@googlemail.com> |
|---|---|
| Date | 2017-01-26 10:17 -0800 |
| Message-ID | <69ef3740-bad6-4239-b163-6324867da273@googlegroups.com> |
| In reply to | #54401 |
I don't think End is a good name for this word because it is too general. In the past I have called it RETURN because it was mostly used to test for a guard condition, possibly do some clean-up, and return an error flag or other result. On Wednesday, 25 January 2017 23:54:04 UTC, HAA wrote: > It can also be written in machine code of course. > > There are downsides to having too many EXIT-type words (e.g. locals > must deal with all of them) and how many EXIT words do you really need? > ?EXIT has uses but not as many as END which will also handle the ?EXIT > situations. I have no issue writing IF END because this is Forth and IF > is referring to the flag on the stack, not on the word which follows. Depending on the architecture, ELSEs that branch to the end of the definition might be resolved to EXITs, or vice versa. Now, we've seen one problem with using EXIT to jump out of a loop or the like: there's no way we can within the same definition code common to both paths. Suppose EXIT could branch to some other point within the definition? END would be a good name for that. Better use another name for EXIT (say DONE) so that you know it's looking for an END. What does that get you? Code-with-DONEs (may have deeply nested conditionals and loops) Code for normal exit END Code for all exits or Code-with-DONEs (may have deeply nested conditionals and loops) Code for normal exit AHEAD END Code for all early exits THEN Code for all exits But that would need a lot of work to implement, and I can't think of many use cases.
[toc] | [prev] | [next] | [standalone]
| From | "HAA" <someone@microsoft.com> |
|---|---|
| Date | 2017-01-27 13:09 +1100 |
| Message-ID | <o6ea8u$8id$1@gioia.aioe.org> |
| In reply to | #54435 |
JennyB wrote: > I don't think End is a good name for this word because it is too general. In the past I > have called it RETURN because it was mostly used to test for a guard condition, > possibly do some clean-up, and return an error flag or other result. > > On Wednesday, 25 January 2017 23:54:04 UTC, HAA wrote: > > > It can also be written in machine code of course. > > > > There are downsides to having too many EXIT-type words (e.g. locals > > must deal with all of them) and how many EXIT words do you really need? > > ?EXIT has uses but not as many as END which will also handle the ?EXIT > > situations. I have no issue writing IF END because this is Forth and IF > > is referring to the flag on the stack, not on the word which follows. > > Depending on the architecture, ELSEs that branch to the end of the definition might be > resolved to EXITs, or vice versa. In Forth there's an expection that you get what you write. It's the only way to guarantee optimizations will be universal. > Now, we've seen one problem with using EXIT to jump out of a loop or the like: there's > no way we can within the same definition code common to both paths. > > Suppose EXIT could branch to some other point within the definition? END would be a > good name for that. Better use another name for EXIT (say DONE) so that you know it's > looking for an END. > > What does that get you? > > Code-with-DONEs (may have deeply nested conditionals and loops) > Code for normal exit > END > Code for all exits > > or > Code-with-DONEs (may have deeply nested conditionals and loops) > Code for normal exit > AHEAD END > Code for all early exits > THEN > Code for all exits > > But that would need a lot of work to implement, and I can't think of many use cases. IMO, "END" is as good a name as any to signify termination of the current definition/block. It has been used in this sense e.g. ENDOF ENDCASE END-CODE. Given END will appear everywhere (it will effectively replace EXIT), you want a word that's short and to the point.
[toc] | [prev] | [next] | [standalone]
| From | rickman <gnuarm@gmail.com> |
|---|---|
| Date | 2017-01-26 21:54 -0500 |
| Message-ID | <o6ecm1$evr$1@dont-email.me> |
| In reply to | #54443 |
On 1/26/2017 9:09 PM, HAA wrote: > JennyB wrote: >> I don't think End is a good name for this word because it is too general. In the past I >> have called it RETURN because it was mostly used to test for a guard condition, >> possibly do some clean-up, and return an error flag or other result. >> >> On Wednesday, 25 January 2017 23:54:04 UTC, HAA wrote: >> >>> It can also be written in machine code of course. >>> >>> There are downsides to having too many EXIT-type words (e.g. locals >>> must deal with all of them) and how many EXIT words do you really need? >>> ?EXIT has uses but not as many as END which will also handle the ?EXIT >>> situations. I have no issue writing IF END because this is Forth and IF >>> is referring to the flag on the stack, not on the word which follows. >> >> Depending on the architecture, ELSEs that branch to the end of the definition might be >> resolved to EXITs, or vice versa. > > In Forth there's an expection that you get what you write. It's the only way to > guarantee optimizations will be universal. > >> Now, we've seen one problem with using EXIT to jump out of a loop or the like: there's >> no way we can within the same definition code common to both paths. >> >> Suppose EXIT could branch to some other point within the definition? END would be a >> good name for that. Better use another name for EXIT (say DONE) so that you know it's >> looking for an END. >> >> What does that get you? >> >> Code-with-DONEs (may have deeply nested conditionals and loops) >> Code for normal exit >> END >> Code for all exits >> >> or >> Code-with-DONEs (may have deeply nested conditionals and loops) >> Code for normal exit >> AHEAD END >> Code for all early exits >> THEN >> Code for all exits >> >> But that would need a lot of work to implement, and I can't think of many use cases. > > IMO, "END" is as good a name as any to signify termination of the current definition/block. > It has been used in this sense e.g. ENDOF ENDCASE END-CODE. Given END will > appear everywhere (it will effectively replace EXIT), you want a word that's short and > to the point. That is a good point. In other uses the name explains what is being ended. That is why RETURN might be better, or ENDWORD maybe. It's not really "ending" a word, it's exiting by returning from within a control structure. -- Rick C
[toc] | [prev] | [next] | [standalone]
| From | Coos Haak <htrofhc@gmail.com> |
|---|---|
| Date | 2017-01-27 14:12 +0100 |
| Message-ID | <e2f5v19jk89e.1licyglzy0cqo.dlg@40tude.net> |
| In reply to | #54446 |
Op Thu, 26 Jan 2017 21:54:31 -0500 schreef rickman: > On 1/26/2017 9:09 PM, HAA wrote: >> JennyB wrote: >>> I don't think End is a good name for this word because it is too general. In the past I >>> have called it RETURN because it was mostly used to test for a guard condition, >>> possibly do some clean-up, and return an error flag or other result. >>> >>> On Wednesday, 25 January 2017 23:54:04 UTC, HAA wrote: >>> >>>> It can also be written in machine code of course. >>>> >>>> There are downsides to having too many EXIT-type words (e.g. locals >>>> must deal with all of them) and how many EXIT words do you really need? >>>> ?EXIT has uses but not as many as END which will also handle the ?EXIT >>>> situations. I have no issue writing IF END because this is Forth and IF >>>> is referring to the flag on the stack, not on the word which follows. >>> >>> Depending on the architecture, ELSEs that branch to the end of the definition might be >>> resolved to EXITs, or vice versa. >> >> In Forth there's an expection that you get what you write. It's the only way to >> guarantee optimizations will be universal. >> >>> Now, we've seen one problem with using EXIT to jump out of a loop or the like: there's >>> no way we can within the same definition code common to both paths. >>> >>> Suppose EXIT could branch to some other point within the definition? END would be a >>> good name for that. Better use another name for EXIT (say DONE) so that you know it's >>> looking for an END. >>> >>> What does that get you? >>> >>> Code-with-DONEs (may have deeply nested conditionals and loops) >>> Code for normal exit >>> END >>> Code for all exits >>> >>> or >>> Code-with-DONEs (may have deeply nested conditionals and loops) >>> Code for normal exit >>> AHEAD END >>> Code for all early exits >>> THEN >>> Code for all exits >>> >>> But that would need a lot of work to implement, and I can't think of many use cases. >> >> IMO, "END" is as good a name as any to signify termination of the current definition/block. >> It has been used in this sense e.g. ENDOF ENDCASE END-CODE. Given END will >> appear everywhere (it will effectively replace EXIT), you want a word that's short and >> to the point. > > That is a good point. In other uses the name explains what is being > ended. That is why RETURN might be better, or ENDWORD maybe. It's not > really "ending" a word, it's exiting by returning from within a control > structure. Not to confuse with the antique use of END for UNTIL, I called 'EXIT THEN' BREAK in the early 1990's. But I haven't used or implemented it since long because it solves nothing. I do use ?EXIT for 'IF EXIT THEN'. groet Coos
[toc] | [prev] | [next] | [standalone]
| From | "HAA" <someone@microsoft.com> |
|---|---|
| Date | 2017-01-28 12:32 +1100 |
| Message-ID | <o6gsa6$9rp$1@gioia.aioe.org> |
| In reply to | #54456 |
Coos Haak wrote: > ... > Not to confuse with the antique use of END for UNTIL, I called 'EXIT THEN' > BREAK in the early 1990's. But I haven't used or implemented it since > long because it solves nothing. What did reverting to 'EXIT THEN' solve? Apart from being Standard I can't think of any reason to write EXIT THEN when a single word would do. Nobody is ever going to insert a word between them. > I do use ?EXIT for 'IF EXIT THEN'. > > groet Coos 'IF EXIT THEN' doesn't occur as often yet you chose to create a word for it (because other forths had ?EXIT). Some stats from the last public release of CHForth (1994). The ratio is roughly what I would expect. 0 ?EXIT (not then implemented) 15 IF EXIT THEN 122 <something> EXIT THEN
[toc] | [prev] | [next] | [standalone]
| From | "HAA" <someone@microsoft.com> |
|---|---|
| Date | 2017-01-29 10:35 +1100 |
| Message-ID | <o6j9oo$1qe9$1@gioia.aioe.org> |
| In reply to | #54446 |
rickman wrote: > On 1/26/2017 9:09 PM, HAA wrote: > > ... > > IMO, "END" is as good a name as any to signify termination of the current > > definition/block. It has been used in this sense e.g. ENDOF ENDCASE END-CODE. Given > > END will > > appear everywhere (it will effectively replace EXIT), you want a word that's short and > > to the point. > > That is a good point. In other uses the name explains what is being > ended. That is why RETURN might be better, or ENDWORD maybe. It's not > really "ending" a word, it's exiting by returning from within a control > structure. BEGIN doesn't explain what is beginning. You looked it up in the handbook once and that was that. BEGINxxx ENDxxx words in a language indicate lack of imagination. When users have long forgotten the semantics behind a name, the practicalities of it such as length will remain. Had I choice of the names EXIT or END, I would still pick the latter as it is shorter.
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-01-22 21:35 -0500 |
| Message-ID | <o63q1l$enm$1@dont-email.me> |
| In reply to | #54261 |
On 1/22/2017 20:00, HAA wrote:
> Elizabeth D. Rather wrote:
>> On 1/20/17 1:23 AM, HAA wrote:
>>> hheinrich.hohl@gmail.com wrote:
>>>> ... I absolutely agree with Andrew. EXIT THEN is clear and
>>>> readable. END does not offer any benefit. It is just one word
>>>> more to memorize.
>>>
>>> END is here, it's a factor and it can't be undone. Elizabeth
>>> said she's not opposed to END. This is just as well because END
>>> is a game changer for Forth. Once END replaces EXIT THEN the
>>> need for EXIT largely vanishes. The chances of seeing EXIT in
>>> Forth code again will be exceptional. If the consequence of END
>>> is a greatly diminished role for EXIT in Forth then so be it.
>>> The clock cannot be turned back.
>>
>> Well, it remains to be seen how many people adopt it. I saw a
>> distinct lack of enthusiasm. But we shall see.
>>
>> Cheers, Elizabeth
>
> Change is never popular but it will become apparent THEN in EXIT
> THEN is not needed by the end-user. It was just a prop used by the
> compiler at compile-time to complete an address. Nobody is worried
> the THEN in REPEAT is not visible because it's not necessary in
> understanding what occurs at run-time. It's the same with END. The
> compiler's need for THEN should not be the burden of the programmer.
> All he needs to know is the effect at run-time, which is to exit the
> definition. By hiding THEN within END the result is simpler, more
> effect looking code. And given the numbers involved it will be
> dramatic.
>
You're conflating two effects in a single word END.
The THEN indicates the termination of the effect of the IF; it's a
compile time signal that you, the programmer, are giving the compiler
and to the next programmer that picks up your code that this is where
the IF ends. There is no executable code generated for a THEN statement.
The dumb old CPU on which the code will eventually run doesn't know
anything about THEN, but then it doesn't need to know anything about the
source code at all.
In contrast, EXIT generates code; it is an instruction to the CPU and
not the compiler, to leave this word and not to execute anything after
it. A dumb compiler doesn't know this and keeps on compiling right
through and past it, but then it doesn't need to know anything about the
effect of the code it's generatng.
END, the conjunction of run time EXIT and an alternative to the compile
time THEN for the matching IF, is one of these horrible hybrid
creatures; a cobbled together beast of two burdens, neither of which it
carries well.
>
> I am bemused by statements coming from those who support and use ANS
> WHILE (which does require some thought) that they will be unable to
> cope with a simple substitution. Personally I think they can and
> all they are waiting for is leadership. What I'm proposing should
> have been in Forth from the beginning. Perhaps nobody expected EXIT
> to be used as much as it has.
>
Be that leader. Propose it formally, and see how it fairs. Writing a
specification for even a simple word like this will give you some
understanding of how writing a spec is not easy. Expect to have it
criticised too; I'd recommend developing a thick skin.
As an observation, it occurs only 11 times in over 5000 lines of my
Forth kernel, and several of those uses would benefit from rewriting.
This for example;
: get-stack ( stack -- e1 .. en n )
dup @ dup 0= if nip exit then
cells bounds swap ?do
i @
-cell +loop ;
is probably better as
: get-stack ( stack -- e1 .. en n )
dup @ dup if
cells bounds swap ?do
i @
-cell +loop
else nip then ;
I'm not too exercised by it, and not in a month of wet Sundays would I
think that replacing the EXIT THEN with END would have any dramatic effect.
I may be wrong, and this might be the word that sets the Forth heather
alight. But I doubt it.
--
Alex
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2017-01-23 04:15 -0600 |
| Message-ID | <zdCdnf3V0YtZShjFnZ2dnUU7-NmdnZ2d@supernews.com> |
| In reply to | #54265 |
Alex <alex@rivadpm.com> wrote: > > Be that leader. Propose it formally, and see how it fairs. Writing a > specification for even a simple word like this will give you some > understanding of how writing a spec is not easy. Expect to have it > criticised too; I'd recommend developing a thick skin. It's a bit early for that. Andrew.
[toc] | [prev] | [next] | [standalone]
| From | Alex <alex@rivadpm.com> |
|---|---|
| Date | 2017-01-23 10:29 -0500 |
| Message-ID | <o657co$frd$1@dont-email.me> |
| In reply to | #54286 |
On 1/23/2017 05:15, Andrew Haley wrote: > Alex <alex@rivadpm.com> wrote: >> >> Be that leader. Propose it formally, and see how it fairs. Writing a >> specification for even a simple word like this will give you some >> understanding of how writing a spec is not easy. Expect to have it >> criticised too; I'd recommend developing a thick skin. > > It's a bit early for that. > > Andrew. > Given the subject, perhaps it will be too early for a long time. On the other hand, I find the rigour of writing at least a skeleton proposal (especially the problem, use & experience sections) sharpens the argument. It also allows a more orderly & formal discussion rather than a meta discussion, which is where I am with HAA is at right now. For example, apart from reducing typing effort, I don't have a good sense of what problem END is meant to fix. -- Alex
[toc] | [prev] | [next] | [standalone]
Page 7 of 14 — ← Prev page 1 … 5 6 [7] 8 9 … 14 Next page →
Back to top | Article view | comp.lang.forth
csiph-web