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


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

EXIT THEN

Started by"HAA" <someone@microsoft.com>
First post2017-01-17 12:17 +1100
Last post2017-03-26 01:52 -0700
Articles 20 on this page of 269 — 27 participants

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


Contents

  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 11 of 14 — ← Prev page 1 … 9 10 [11] 12 13 14  Next page →


#56042

FromAlex <alex@rivadpm.com>
Date2017-03-21 19:26 +0000
Message-ID<oarujs$rkg$1@dont-email.me>
In reply to#56040
On 3/21/2017 19:24, Helmar Wodtke wrote:
> Am Dienstag, 21. März 2017 20:16:31 UTC+1 schrieb Alex:
>
>>> : ENDOF`    ELSE` ;                                \ -- CS: p1 -- p2
>
>> : ENDOF   >R ]] ELSE [[ R> ; IMMEDIATE
>
> Of course. Implementation differs, as my implementation puts a 0 (zero) to stack to determinate where ENDOF has to stop action. It's legal to do so, as the ELSE-sys on compilation stack should not be zero usually... In my case the ENDOF is indeed only syntactical sugar for ELSE.
>
> Regards,
> -Helmar
>

But the 0 gets in the way of the p1 -- p2 on the control stack.

-- 
Alex

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


#56043

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-21 12:32 -0700
Message-ID<cba2e7cd-83ad-4b94-b4e3-b51563e8fd1e@googlegroups.com>
In reply to#56042
Am Dienstag, 21. März 2017 20:26:36 UTC+1 schrieb Alex:
> On 3/21/2017 19:24, Helmar Wodtke wrote:
> > Am Dienstag, 21. März 2017 20:16:31 UTC+1 schrieb Alex:
> >
> >>> : ENDOF`    ELSE` ;                                \ -- CS: p1 -- p2
> >
> >> : ENDOF   >R ]] ELSE [[ R> ; IMMEDIATE
> >
> > Of course. Implementation differs, as my implementation puts a 0 (zero) to stack to determinate where ENDOF has to stop action. It's legal to do so, as the ELSE-sys on compilation stack should not be zero usually... In my case the ENDOF is indeed only syntactical sugar for ELSE.
> >
> > Regards,
> > -Helmar
> >
> 
> But the 0 gets in the way of the p1 -- p2 on the control stack.

Why?

: foo
  [ 0 ] \ CS:0
  2 OVER = IF \ CS: 0 IF-sys
     do-something
  ELSE \ CS: 0 ELSE-sys
  ...
  \ CS: 0 ELSE-sys1 ELSE-sys2...
  ENDOF \ CS: --
;

Regards,
-Helmar

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


#56048

FromAlex <alex@rivadpm.com>
Date2017-03-21 19:51 +0000
Message-ID<oas03d$1o6$1@dont-email.me>
In reply to#56043
On 3/21/2017 19:32, Helmar Wodtke wrote:
> Am Dienstag, 21. März 2017 20:26:36 UTC+1 schrieb Alex:
>> On 3/21/2017 19:24, Helmar Wodtke wrote:
>>> Am Dienstag, 21. März 2017 20:16:31 UTC+1 schrieb Alex:
>>>
>>>>> : ENDOF`    ELSE` ;                                \ -- CS:
>>>>> p1 -- p2
>>>
>>>> : ENDOF   >R ]] ELSE [[ R> ; IMMEDIATE
>>>
>>> Of course. Implementation differs, as my implementation puts a 0
>>> (zero) to stack to determinate where ENDOF has to stop action.
>>> It's legal to do so, as the ELSE-sys on compilation stack should
>>> not be zero usually... In my case the ENDOF is indeed only
>>> syntactical sugar for ELSE.
>>>
>>> Regards, -Helmar
>>>
>>
>> But the 0 gets in the way of the p1 -- p2 on the control stack.
>
> Why?
>
> : foo [ 0 ] \ CS:0 2 OVER = IF \ CS: 0 IF-sys do-something ELSE \ CS:
> 0 ELSE-sys ... \ CS: 0 ELSE-sys1 ELSE-sys2... ENDOF \ CS: -- ;
>
> Regards, -Helmar
>

Ah, now I see. Magic number of 0; so an ORIG never contains a zero as 
its rightmost value. That requires carnal knowledge.

-- 
Alex

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


#56049

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-21 12:56 -0700
Message-ID<5636c784-689b-43cd-8dad-9c62b24b9a5e@googlegroups.com>
In reply to#56048
Am Dienstag, 21. März 2017 20:51:57 UTC+1 schrieb Alex:
> On 3/21/2017 19:32, Helmar Wodtke wrote:
> > Am Dienstag, 21. März 2017 20:26:36 UTC+1 schrieb Alex:
> >> On 3/21/2017 19:24, Helmar Wodtke wrote:
> >>> Am Dienstag, 21. März 2017 20:16:31 UTC+1 schrieb Alex:
> >>>
> >>>>> : ENDOF`    ELSE` ;                                \ -- CS:
> >>>>> p1 -- p2
> >>>
> >>>> : ENDOF   >R ]] ELSE [[ R> ; IMMEDIATE
> >>>
> >>> Of course. Implementation differs, as my implementation puts a 0
> >>> (zero) to stack to determinate where ENDOF has to stop action.
> >>> It's legal to do so, as the ELSE-sys on compilation stack should
> >>> not be zero usually... In my case the ENDOF is indeed only
> >>> syntactical sugar for ELSE.
> >>>
> >>> Regards, -Helmar
> >>>
> >>
> >> But the 0 gets in the way of the p1 -- p2 on the control stack.
> >
> > Why?
> >
> > : foo [ 0 ] \ CS:0 2 OVER = IF \ CS: 0 IF-sys do-something ELSE \ CS:
> > 0 ELSE-sys ... \ CS: 0 ELSE-sys1 ELSE-sys2... ENDOF \ CS: -- ;
> >
> > Regards, -Helmar
> >
> 
> Ah, now I see. Magic number of 0; so an ORIG never contains a zero as 
> its rightmost value. That requires carnal knowledge.

Of course you could construct a Forth where this is not true. If you have syntax control on CS, it would have to be the case that THEN is defined in a way like

: THEN 0 ?PAIRS ... ; IMMEDIATE

That's really unlikely. And in all other cases ELSE-sys is some pointer. Usually the IF does not occur at position 0...
So what ;)

Regards,
-Helmar

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


#56058

FromAlex <alex@rivadpm.com>
Date2017-03-21 21:02 +0000
Message-ID<oas471$gt5$1@dont-email.me>
In reply to#56049
On 3/21/2017 19:56, Helmar Wodtke wrote:
> That's really unlikely. And in all other cases ELSE-sys is some
> pointer. Usually the IF does not occur at position 0... So what ;)

A big so what. My Forth uses a triple ORIG which carries information for
the compile beyond the usual "pointer" information.

(A complete aside as to why.)

The format of all control flow stack entries is {P M B}, where P is the
traditional pointer; M is a pointer (or marker) to a part of a DAG where
this ORIG was generated; and B is a set of bits that identify the word
that generated the ORIG, and how to handle it. It might be zero. Every
compiled word puts information on the control flow stack. Code
generation is delayed for as long as possible (the goal is until we
encounter an EXECUTE, but I'm not quite there yet).

For example

: foo ( f -- v ) if 10 else 20 then ;

There's control flow information when we get to ; that indicates it's
actually the target of a jump because of the THEN preceding it. If, as
in this case, we could generate a simple RET for ; then the jump
generated by the ELSE can be replaced by a RET. In other words, the code
is rewritten to compile

: foo ( f -- v ) if 10 exit then 20 ;

There are a number of other optimizations in this case; it could get
rewritten to

: foo :if 10 :else 20 :then ;

encoding as the branchless (EAX is top of stack)

     test   eax eax	:if
     mov    eax
                10       10
     mov	   edx          :else
                20       20
     cmovnz eax edx      :then
     ret

Because code generation can be delayed, this;

: bar true foo ;

allows rewrite of BAR as

: bar 10 ;

since we know the result at compile time.

I've only got the simplest cases working so far; it's a long term
project that I've been working on for 10 years or so. Another decade
should see it finished.

Back to the 0 case; your code would fail on my compiler, since the B
field is currently 0 while I build the optimizer.

-- 
Alex

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


#56059

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-21 14:15 -0700
Message-ID<3c17e149-b41f-4876-89d1-b5e3eede1535@googlegroups.com>
In reply to#56058
Am Dienstag, 21. März 2017 22:02:09 UTC+1 schrieb Alex:
> On 3/21/2017 19:56, Helmar Wodtke wrote:
> > That's really unlikely. And in all other cases ELSE-sys is some
> > pointer. Usually the IF does not occur at position 0... So what ;)
> 
> A big so what. My Forth uses a triple ORIG which carries information for
> the compile beyond the usual "pointer" information.
> 
> (A complete aside as to why.)
> 
> The format of all control flow stack entries is {P M B}, where P is the
> traditional pointer; M is a pointer (or marker) to a part of a DAG where
> this ORIG was generated; and B is a set of bits that identify the word
> that generated the ORIG, and how to handle it. It might be zero. Every
> compiled word puts information on the control flow stack. Code
> generation is delayed for as long as possible (the goal is until we
> encounter an EXECUTE, but I'm not quite there yet).
> 
> For example
> 
> : foo ( f -- v ) if 10 else 20 then ;
> 
> There's control flow information when we get to ; that indicates it's
> actually the target of a jump because of the THEN preceding it. If, as
> in this case, we could generate a simple RET for ; then the jump
> generated by the ELSE can be replaced by a RET. In other words, the code
> is rewritten to compile
> 
> : foo ( f -- v ) if 10 exit then 20 ;
> 
> There are a number of other optimizations in this case; it could get
> rewritten to
> 
> : foo :if 10 :else 20 :then ;
> 
> encoding as the branchless (EAX is top of stack)
> 
>      test   eax eax	:if
>      mov    eax
>                 10       10
>      mov	   edx          :else
>                 20       20
>      cmovnz eax edx      :then
>      ret
> 
> Because code generation can be delayed, this;
> 
> : bar true foo ;
> 
> allows rewrite of BAR as
> 
> : bar 10 ;
> 
> since we know the result at compile time.
> 
> I've only got the simplest cases working so far; it's a long term
> project that I've been working on for 10 years or so. Another decade
> should see it finished.
> 
> Back to the 0 case; your code would fail on my compiler, since the B
> field is currently 0 while I build the optimizer.
> 
> -- 
> Alex

You put 3 entries on stack for control flow?! OK. I know CS-PICK/CS-ROLL etc. to access this. But why not make a special stack (or behaviour) for this then. Even DPANS does not expect the control flow to be on "normal" stack. You could make an stack with attributes... You could maintain a kind of simplicity for thumb code like I posted and still work as you want...

Or you add syntax control...

Regards,
-Helmar

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


#56061

FromAlex <alex@rivadpm.com>
Date2017-03-21 21:36 +0000
Message-ID<oas67o$o0a$1@dont-email.me>
In reply to#56059
On 3/21/2017 21:15, Helmar Wodtke wrote:
> Am Dienstag, 21. März 2017 22:02:09 UTC+1 schrieb Alex:
>> On 3/21/2017 19:56, Helmar Wodtke wrote:
>>> That's really unlikely. And in all other cases ELSE-sys is some
>>> pointer. Usually the IF does not occur at position 0... So what
>>> ;)
>>
>> A big so what. My Forth uses a triple ORIG which carries
>> information for the compile beyond the usual "pointer"
>> information.
>>

>
> You put 3 entries on stack for control flow?! OK. I know
> CS-PICK/CS-ROLL etc. to access this. But why not make a special stack
> (or behaviour) for this then. Even DPANS does not expect the control
> flow to be on "normal" stack.

It permits it. (I suspect most Forths use the data stack as a control 
flow stack, but I have no confirmation of that.)

 > You could make an stack with
> attributes... You could maintain a kind of simplicity for thumb code
> like I posted and still work as you want...

Why use another stack? The data stack is there, and it's easy to use, 
and doesn't require another stack and a whole bunch of CS-DEPTH CS-PUSH 
CS-DUP CS-OVER and and and etc only for compile time. The attributes are 
the M and B fields (and I suspect the B field will not be required in 
the long run).

>
> Or you add syntax control...

What is that?

-- 
Alex

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


#56064

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-21 15:12 -0700
Message-ID<acdf45a3-43d8-465d-a2df-5b56bf866aee@googlegroups.com>
In reply to#56061
Am Dienstag, 21. März 2017 22:36:40 UTC+1 schrieb Alex:

> > Or you add syntax control...
> 
> What is that?

Mhm, something I personally do not like that much...
But you could have a word 

: ?PAIRS <> IF ABORT" SYNTAX ERROR" THEN ; / CS: a b --

The numbers you want to have are arbitrary - so for example IF or ELSE could create a zero on stack. It's used like

: ` POSTPONE POSTPONE ; IMMEDIATE
: IF ` IF 3 ; IMMEDIATE
: ELSE 3 ?PAIRS ` ELSE 4 ; IMMEDIATE
: THEN 3 OF 4 THEN 4 ?PAIRS ` THEN ; IMMEDIATE

(I hope you got the Borg joke about it ;) )

Regards,
-Helmar

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


#56066

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-21 16:13 -0700
Message-ID<b72efd30-c108-43d1-9385-a5e3a5121c10@googlegroups.com>
In reply to#56064
Am Dienstag, 21. März 2017 23:12:24 UTC+1 schrieb Helmar Wodtke:
> Am Dienstag, 21. März 2017 22:36:40 UTC+1 schrieb Alex:
> 
> > > Or you add syntax control...
> > 
> > What is that?
> 
> Mhm, something I personally do not like that much...
> But you could have a word 
> 
> : ?PAIRS <> IF ABORT" SYNTAX ERROR" THEN ; / CS: a b --

: ?PAIRS <> ABORT" SYNTAX ERROR" ; \ CS: a b --

ABORT" takes a flag by it's own. So to force error you would have to do TRUE ABORT" ... I did not realize, that this word is in DPANS... So well, but you can do ?PAIRS simpler this way...

> 
> The numbers you want to have are arbitrary - so for example IF or ELSE could create a zero on stack. It's used like
> 
> : ` POSTPONE POSTPONE ; IMMEDIATE
> : IF ` IF 3 ; IMMEDIATE
> : ELSE 3 ?PAIRS ` ELSE 4 ; IMMEDIATE
> : THEN 3 OF 4 THEN 4 ?PAIRS ` THEN ; IMMEDIATE
> 
> (I hope you got the Borg joke about it ;) )
> 
> Regards,
> -Helmar

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


#56085

FromAlex <alex@rivadpm.com>
Date2017-03-22 09:16 +0000
Message-ID<oatf76$tj5$2@dont-email.me>
In reply to#56064
On 3/21/2017 22:12, Helmar Wodtke wrote:
> Am Dienstag, 21. März 2017 22:36:40 UTC+1 schrieb Alex:
>
>>> Or you add syntax control...
>>
>> What is that?
>
> Mhm, something I personally do not like that much... But you could
> have a word
>
> : ?PAIRS <> IF ABORT" SYNTAX ERROR" THEN ; / CS: a b --
>
> The numbers you want to have are arbitrary - so for example IF or
> ELSE could create a zero on stack. It's used like
>
> : ` POSTPONE POSTPONE ; IMMEDIATE : IF ` IF 3 ; IMMEDIATE : ELSE 3
> ?PAIRS ` ELSE 4 ; IMMEDIATE : THEN 3 OF 4 THEN 4 ?PAIRS ` THEN ;
> IMMEDIATE
>
> (I hope you got the Borg joke about it ;) )
>
> Regards, -Helmar
>

That's an attempt to type the CS stack contents. It doesn't add much 
semantic meaning to the process, which is what I'm trying to do.

-- 
Alex

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


#56088

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-22 03:35 -0700
Message-ID<04dc05d6-eb2b-4ae4-8b61-a29ebcc2a63c@googlegroups.com>
In reply to#56085
Am Mittwoch, 22. März 2017 10:16:06 UTC+1 schrieb Alex:
> On 3/21/2017 22:12, Helmar Wodtke wrote:
> > Am Dienstag, 21. März 2017 22:36:40 UTC+1 schrieb Alex:
> >
> >>> Or you add syntax control...
> >>
> >> What is that?
> >
> > Mhm, something I personally do not like that much... But you could
> > have a word
> >
> > : ?PAIRS <> IF ABORT" SYNTAX ERROR" THEN ; / CS: a b --
> >
> > The numbers you want to have are arbitrary - so for example IF or
> > ELSE could create a zero on stack. It's used like
> >
> > : ` POSTPONE POSTPONE ; IMMEDIATE : IF ` IF 3 ; IMMEDIATE : ELSE 3
> > ?PAIRS ` ELSE 4 ; IMMEDIATE : THEN 3 OF 4 THEN 4 ?PAIRS ` THEN ;
> > IMMEDIATE
> >
> > (I hope you got the Borg joke about it ;) )
> >
> > Regards, -Helmar
> >
> 
> That's an attempt to type the CS stack contents. It doesn't add much 
> semantic meaning to the process, which is what I'm trying to do.

Sure, I told you I personally do not like it that much... But "semantics" it adds - depending on what numbers you put on the CS stack. You could identify that you are inside IF/THEN and such. I see it as tool for debugging - you can implement it if you need it.

Regarding "semantics" I'm not sure what you want to have. I'm with my JIT in HelFORTH perfectly OK with only having TC compilation result. I dont need more and would not really know why to implement CS-entries that are longer than 1 value. Optimizations can be done by loophole optimizer in TC (what would cause some problems like tail call optimization) and later in the JIT (that is a target compiler from TC to target...)

Regards,
-Helmar


> -- 
> Alex

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


#56052

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-21 13:33 -0700
Message-ID<bf85a51f-4033-412e-8505-8d8f9287da4a@googlegroups.com>
In reply to#56048
Am Dienstag, 21. März 2017 20:51:57 UTC+1 schrieb Alex:
> On 3/21/2017 19:32, Helmar Wodtke wrote:
> > Am Dienstag, 21. März 2017 20:26:36 UTC+1 schrieb Alex:
> >> On 3/21/2017 19:24, Helmar Wodtke wrote:
> >>> Am Dienstag, 21. März 2017 20:16:31 UTC+1 schrieb Alex:
> >>>
> >>>>> : ENDOF`    ELSE` ;                                \ -- CS:
> >>>>> p1 -- p2
> >>>
> >>>> : ENDOF   >R ]] ELSE [[ R> ; IMMEDIATE
> >>>
> >>> Of course. Implementation differs, as my implementation puts a 0
> >>> (zero) to stack to determinate where ENDOF has to stop action.
> >>> It's legal to do so, as the ELSE-sys on compilation stack should
> >>> not be zero usually... In my case the ENDOF is indeed only
> >>> syntactical sugar for ELSE.
> >>>
> >>> Regards, -Helmar
> >>>
> >>
> >> But the 0 gets in the way of the p1 -- p2 on the control stack.
> >
> > Why?
> >
> > : foo [ 0 ] \ CS:0 2 OVER = IF \ CS: 0 IF-sys do-something ELSE \ CS:
> > 0 ELSE-sys ... \ CS: 0 ELSE-sys1 ELSE-sys2... ENDOF \ CS: -- ;
> >
> > Regards, -Helmar
> >
> 
> Ah, now I see. Magic number of 0; so an ORIG never contains a zero as 
> its rightmost value. That requires carnal knowledge.
> 
> -- 
> Alex

BTW, to make the thing more interesting for failure, but for to have to have more carnal knowledge:

: ` POSTPONE POSTPONE ; IMMEDIATE
VARIABLE OF-MARKER
: CASE OF-MARKER ; IMMEDIATE
: OF ` OVER ` = ` IF ` DROP ; IMMEDIATE
: ENDOF ` ELSE ; IMMEDIATE
: ENDCASE BEGIN DUP OF-MARKER <> WHILE
  ` THEN REPEAT DROP ; IMMEDIATE

This works with gforth (tested), but should work with others too. This looks legal? But OF-MARKER is as useful as 0 (zero).

You see the problem? Zero is probably the better choice. And zero needs less arcane knowledge to see what is does. Implementations, where "zero" could not be a marker, seems to be really unlikely.

Regards,
-Helmar

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


#56025

FromAlex <alex@rivadpm.com>
Date2017-03-21 17:51 +0000
Message-ID<oarp1l$7k4$1@dont-email.me>
In reply to#56009
On 3/21/2017 15:21, HAA wrote:
> Jan Coombs wrote:
>> On Mon, 20 Mar 2017 06:32:09 -0700 (PDT)
>> Helmar Wodtke <helmwo@gmail.com> wrote:
>>
>> [ about : END  POSTPONE EXIT  POSTPONE THEN ; IMMEDIATE or
>> similar]
>>
>>> This word I know as ";THEN". It's basically useful for smaller
>>> source definitions (for example if you want to write word
>>> definition on one line).
>>
>> Yes, ";THEN" catches my eye much more meaningfully than "END",
>> thanks for sharing.
>>
>> Jan Coombs
>
> Disagree.  The action is to terminate.  ;THEN suggests the opposite...
>
> : substitute ( c1 -- c2 )
>    [char] [ of  [char] (  ;then
>    [char] ] of  [char] )  ;then
>    [char] { of  [char] (  ;then
>    [char] } of  [char] )  ;then ;
>
> : substitute ( c1 -- c2 )
>    [char] [ of  [char] (  end
>    [char] ] of  [char] )  end
>    [char] { of  [char] (  end
>    [char] } of  [char] )  end ;
>
>

Is ELSE allowed?

  1 of 2 else 3 end
  2 of 4 else 5 end


-- 
Alex

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


#56032

FromAlex <alex@rivadpm.com>
Date2017-03-21 18:59 +0000
Message-ID<oart0c$lrg$1@dont-email.me>
In reply to#56009
On 3/21/2017 15:21, HAA wrote:
> Jan Coombs wrote:
>> On Mon, 20 Mar 2017 06:32:09 -0700 (PDT)
>> Helmar Wodtke <helmwo@gmail.com> wrote:
>>
>> [ about : END  POSTPONE EXIT  POSTPONE THEN ; IMMEDIATE or
>> similar]
>>
>>> This word I know as ";THEN". It's basically useful for smaller
>>> source definitions (for example if you want to write word
>>> definition on one line).
>>
>> Yes, ";THEN" catches my eye much more meaningfully than "END",
>> thanks for sharing.
>>
>> Jan Coombs
>
> Disagree.  The action is to terminate.  ;THEN suggests the opposite...
>
> : substitute ( c1 -- c2 )
>    [char] [ of  [char] (  ;then
>    [char] ] of  [char] )  ;then
>    [char] { of  [char] (  ;then
>    [char] } of  [char] )  ;then ;
>
> : substitute ( c1 -- c2 )
>    [char] [ of  [char] (  end
>    [char] ] of  [char] )  end
>    [char] { of  [char] (  end
>    [char] } of  [char] )  end ;
>
>
>

Chuck Moore http://www.ultratechnology.com/1xforth.htm (There's much I 
disagree about here, but in the context of the current discussion...)

<Chuck>

In Classic Forth we used

IF ELSE THEN

And I have eliminated ELSE.

I don't see that ELSE is as useful as the complexity it introduces would 
justify. You can see this in my code. I will have IF with a semicolon 
and then I will exit the definition at that point or continue.

IF ~~~ ; THEN

I have the two way branch but using the new feature of a semicolon which 
does not end a definition.

...

In fact in all my latest Forths semicolon kind of meant either return or 
jump depending on the context and it's optimized in the compiler to do 
that.

-- 
Alex

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


#56035

FromMark Wills <markwills1970@gmail.com>
Date2017-03-21 12:07 -0700
Message-ID<f17fe550-ba10-45fb-8c72-1584c049c396@googlegroups.com>
In reply to#56032
On Tuesday, 21 March 2017 18:59:08 UTC, Alex  wrote: 
> 
> In fact in all my latest Forths semicolon kind of meant either return or 
> jump depending on the context and it's optimized in the compiler to do 
> that.
> 
> -- 
> Alex

Chuck protests at the complexity of ELSE and "solves" it by making ; more
complex. In order to understand Chuck's code I have to "problem solve" by
determining when ; means end, and when it doesn't.

I'll stick with ELSE, thanks!

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


#56039

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-21 12:17 -0700
Message-ID<6b6e981c-9ec0-415f-a1d0-d38abe8436ce@googlegroups.com>
In reply to#56035
Am Dienstag, 21. März 2017 20:07:58 UTC+1 schrieb Mark Wills:
> On Tuesday, 21 March 2017 18:59:08 UTC, Alex  wrote: 
> > 
> > In fact in all my latest Forths semicolon kind of meant either return or 
> > jump depending on the context and it's optimized in the compiler to do 
> > that.
> > 
> > -- 
> > Alex
> 
> Chuck protests at the complexity of ELSE and "solves" it by making ; more
> complex. In order to understand Chuck's code I have to "problem solve" by
> determining when ; means end, and when it doesn't.
> 
> I'll stick with ELSE, thanks!

Was it ColorForth? In this case there is a lot that would not fit DPANS-thinking...

I btw. also try to avoid ELSE. I use AND: and OR: if possible. By using ;THEN there is the ELSE-part behind ;THEN. But I still have ELSE too and use it from time to time...

Regards,
-Helmar

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


#56083

From"HAA" <someone@microsoft.com>
Date2017-03-22 20:08 +1100
Message-ID<oatepl$cqd$1@gioia.aioe.org>
In reply to#56039
Helmar Wodtke wrote:
> ...
> I btw. also try to avoid ELSE. I use AND: and OR: if possible. By using ;THEN there is
> the ELSE-part behind ;THEN. But I still have ELSE too and use it from time to time...
>
> Regards,
> -Helmar

Agreed.  There is a difference between having ELSE and misusing it.  ANS-CASE is
an example of misusing ELSE.


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


#56086

FromAlex <alex@rivadpm.com>
Date2017-03-22 09:18 +0000
Message-ID<oatfb5$tj5$3@dont-email.me>
In reply to#56083
On 3/22/2017 09:08, HAA wrote:
> Helmar Wodtke wrote:
>> ...
>> I btw. also try to avoid ELSE. I use AND: and OR: if possible. By using ;THEN there is
>> the ELSE-part behind ;THEN. But I still have ELSE too and use it from time to time...
>>
>> Regards,
>> -Helmar
>
> Agreed.  There is a difference between having ELSE and misusing it.  ANS-CASE is
> an example of misusing ELSE.
>

ANS Forth doesn't tell you how to implement CASE.

-- 
Alex

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


#56090

From"HAA" <someone@microsoft.com>
Date2017-03-22 22:25 +1100
Message-ID<oatmqs$t6q$1@gioia.aioe.org>
In reply to#56086
Alex wrote:
> On 3/22/2017 09:08, HAA wrote:
> > Helmar Wodtke wrote:
> >> ...
> >> I btw. also try to avoid ELSE. I use AND: and OR: if possible. By using ;THEN there
> >> is the ELSE-part behind ;THEN. But I still have ELSE too and use it from time to
> >> time...
> >>
> >> Regards,
> >> -Helmar
> >
> > Agreed.  There is a difference between having ELSE and misusing it.  ANS-CASE is
> > an example of misusing ELSE.
> >
>
> ANS Forth doesn't tell you how to implement CASE.

How many ways are there to implement a straight-jacket?



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


#56092

FromHelmar Wodtke <helmwo@gmail.com>
Date2017-03-22 04:46 -0700
Message-ID<9820cda2-1b4c-485c-907b-3679c0a3bdf0@googlegroups.com>
In reply to#56090
Am Mittwoch, 22. März 2017 12:23:13 UTC+1 schrieb HAA:
> Alex wrote:
> > On 3/22/2017 09:08, HAA wrote:
> > > Helmar Wodtke wrote:
> > >> ...
> > >> I btw. also try to avoid ELSE. I use AND: and OR: if possible. By using ;THEN there
> > >> is the ELSE-part behind ;THEN. But I still have ELSE too and use it from time to
> > >> time...
> > >>
> > >> Regards,
> > >> -Helmar
> > >
> > > Agreed.  There is a difference between having ELSE and misusing it.  ANS-CASE is
> > > an example of misusing ELSE.
> > >
> >
> > ANS Forth doesn't tell you how to implement CASE.
> 
> How many ways are there to implement a straight-jacket?

Alex is right there - ANS Forth does not tell you how to implement... But it says:
-------------------
 6.2.0873 CASE
CORE EXT

        Interpretation: Interpretation semantics for this word are undefined.

        Compilation: ( C: -- case-sys )

Mark the start of the CASE ... OF ... ENDOF ... ENDCASE structure. Append the run-time semantics given below to the current definition.

        Run-time: ( -- )

Continue execution. 
-------------------

The commment only makes a hint how it is used usually. In DPANS it is a "structure" - or say "syntax". So OF is not simply the POSTPONE-version with IF, but some completely syntax driven thing of your Forth compiler ;)

: 7of9 CASE
  1 OF ." One" ENDOF
  7 OF 9 THEN 9 OF ." Nine" ENDOF
ENDCASE ;

^^ would not work... But in real implementations it works...

The wording like this is a "structure" says, that DPANS94 did think, that these kind of words could be deeply optimized. But well the "1" is "executed" if you want so.
You could do

: MYVAL TODAY @ 1 AND IF 3 ELSE DUP 1- THEN ;

: foo
  CASE
     MYVAL OF ." 2nd day" ENDOF
     7 OF ." Seven" ENDOF
  ENDCASE
;

What a compiler can do better by understanding OF as part of a structure...
If there would be defined that ELSE and THEN can be consumers of OF-sys, it would be fine as IF-replacement in some situations...

Regards,
-Helmar

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


Page 11 of 14 — ← Prev page 1 … 9 10 [11] 12 13 14  Next page →

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


csiph-web