Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #131622
| Newsgroups | comp.lang.forth |
|---|---|
| References | <v5fjkr$1p13i$1@dont-email.me> <667bd654$1@news.ausics.net> <v5h5h6$2565d$1@dont-email.me> <v5ioud$2ii4l$1@dont-email.me> |
| From | albert@spenarnc.xs4all.nl |
| Subject | Re: 0 SET-ORDER why? |
| Message-ID | <nnd$70f8bc61$3d91614d@1ca100eb10a2e5f5> (permalink) |
| Organization | KPN B.V. |
| Date | 2024-06-27 11:05 +0200 |
In article <v5ioud$2ii4l$1@dont-email.me>, Gerry Jackson <do-not-use@swldwa.uk> wrote: >On 26/06/2024 14:36, Ruvim wrote: >> One possible use case: >> >> : turnkey ( -- ) 0 set-order >> also Target definitions >> also Minimal also >> ; > >ALSO duplicates the wordlist at the head of the search order. If the >search order is empty there is nothing to duplicate. Therefore ALSO >applied to an empty search order ought to be an ambiguous condition. > >Presumably the above definition works because a target wordlist replaces >whatever garbage ALSO leaves in the search order. So the definition >might as well have 0 1 SET-ORDER instead of 0 SET-ORDER ALSO. >Or better still TARGET-WORDLIST 1 SET-ORDER. Either removes the above >justification for 0 SET-ORDER. > >But having said that it is better for 0 SET-ORDER to do what is natural >instead of yet another ambiguous condition. > > > Another possible use case: > > > > : s-to-n ( addr u -- n ) > > depth >r > > get-order n>r 0 set-order > > ['] evaluate ['] execute-interpreting catch > > nr> set-order > > depth 1- r> <> if -12 throw then > > ; > >This is a better use case e.g. if BASE is greater than decimal 10 >converting an alphanumeric string to a number could clash with a word in >the dictionary. Having an empty search order eliminates that possibility. > >Incidentally another possibility is that if ['] EVALUATE is replaced in >the above definition with ['] SOME-RECOGNISER, that could be the basis >for an ANS/FORTH 2012 compatible way of implementing recognisers. If the >recogniser fails restore the search order and try again. I'm more and more convinced that the ciforth solution to make ONLY a wordlist and stick all the number stuff (plus strings, say denotations) there is ideal. Add the rule that you simply cannot the remove the minimal search order, which may perfect sense. The only non-ISO aspect is that FORTH-WORDLIST and SET-ORDER is missing. This is just as well, implementing SET-ORDER politically correctly would bloat the ciforth kernel with 20%, at least that is my impression from the discussion here. And besides shuffling the wordlists searched for is a terrible idea. I have not seen a use case for that. Think of python. If you import all with *, at least the underlying assumption is that the libraries contain no conflicting names such that the order doesn't matter. Imagine that you can somehow "unimport integral *" . The idea from ENVRIONMENT that was supposed to find out portably what facilities are to be loaded. No sensible use case. A sensible use of wordlist is e.g. ALSO INLINING INCLUDE modulo.frt PREVIOUS This adds INLINING to the search order to have all the operators of modulo calculations automatically inlined: +m -m *m ^m . Then back off. Or adding the ASSEMBLER namespace temporarily to add code words. Or a word like IMPORT that makes an alias from a named wordlist into the current wordlist (assuming current=context). >-- >Gerry > Groetjes Albert -- Don't praise the day before the evening. One swallow doesn't make spring. You must not say "hey" before you have crossed the bridge. Don't sell the hide of the bear until you shot it. Better one bird in the hand than ten in the air. First gain is a cat purring. - the Wise from Antrim -
Back to comp.lang.forth | Previous | Next — Previous in thread | Next in thread | Find similar
0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-25 18:25 -0500
Re: 0 SET-ORDER why? minforth@gmx.net (minforth) - 2024-06-26 01:19 +0000
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-06-26 11:12 +0200
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-26 05:54 -0500
Re: 0 SET-ORDER why? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-06-26 07:49 +0000
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-26 18:50 +1000
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-06-26 17:36 +0400
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-27 13:19 +1000
Re: 0 SET-ORDER why? Gerry Jackson <do-not-use@swldwa.uk> - 2024-06-27 23:10 +0100
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-28 11:56 +1000
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-06-28 13:51 +0400
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-28 22:19 +1000
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-06-28 17:48 +0400
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-29 03:08 +1000
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-07-01 18:45 +1000
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-29 13:27 +1000
Re: 0 SET-ORDER why? Gerry Jackson <do-not-use@swldwa.uk> - 2024-06-27 05:14 +0100
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-06-27 11:05 +0200
Re: 0 SET-ORDER why? minforth@gmx.net (minforth) - 2024-06-27 13:00 +0000
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-27 22:41 +1000
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-27 14:09 -0500
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-27 14:22 -0500
Re: 0 SET-ORDER why? Gerry Jackson <do-not-use@swldwa.uk> - 2024-06-27 23:08 +0100
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-27 18:44 -0500
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-28 15:51 +1000
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-06-28 10:04 +0200
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-29 09:09 -0500
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-06-30 12:22 +0200
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-06-28 14:20 +0400
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-06-28 21:45 +0200
Recognizer protocol (was: 0 SET-ORDER why?) Ruvim <ruvim.pinka@gmail.com> - 2024-06-29 02:27 +0400
Re: 0 SET-ORDER why? Gerry Jackson <do-not-use@swldwa.uk> - 2024-07-04 07:26 +0100
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-06-26 11:18 +0200
Re: 0 SET-ORDER why? minforth@gmx.net (minforth) - 2024-06-26 10:36 +0000
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-26 06:13 -0500
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-26 05:56 -0500
Re: 0 SET-ORDER why? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2024-06-28 15:50 +0000
Re: 0 SET-ORDER why? Hans Bezemer <the.beez.speaks@gmail.com> - 2024-06-28 18:39 +0200
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-29 09:17 -0500
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-06-30 12:21 +1000
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-30 11:10 -0500
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-30 11:16 -0500
Re: 0 SET-ORDER why? minforth@gmx.net (minforth) - 2024-06-30 17:38 +0000
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-06-30 20:25 +0200
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-30 13:31 -0500
Re: 0 SET-ORDER why? minforth@gmx.net (minforth) - 2024-06-30 20:37 +0000
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-06-30 20:49 -0500
Re: 0 SET-ORDER why? mhx@iae.nl (mhx) - 2024-07-01 07:06 +0000
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-07-01 05:06 -0500
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-07-01 13:35 +0200
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-07-01 13:02 +0400
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-07-01 05:13 -0500
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-07-01 21:02 +1000
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-07-02 15:56 +1000
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-07-02 20:04 -0500
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-07-03 12:32 +1000
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-07-03 11:59 +0200
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-07-04 00:46 +1000
Re: 0 SET-ORDER why? albert@spenarnc.xs4all.nl - 2024-07-01 13:39 +0200
Re: 0 SET-ORDER why? sjack@dontemail.me (sjack) - 2024-07-02 14:29 +0000
Re: 0 SET-ORDER why? dxf <dxforth@gmail.com> - 2024-07-03 00:52 +1000
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-07-02 17:42 +0400
Re: 0 SET-ORDER why? Krishna Myneni <krishna.myneni@ccreweb.org> - 2024-07-02 20:17 -0500
Re: 0 SET-ORDER why? Anthony Howe <achowe@snert.com> - 2024-09-21 15:37 -0400
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-09-22 21:52 +0400
Re: 0 SET-ORDER why? Anthony Howe <achowe@snert.com> - 2024-09-22 14:02 -0400
Re: 0 SET-ORDER why? Ruvim <ruvim.pinka@gmail.com> - 2024-09-23 00:21 +0400
csiph-web