Rocksolid Light

Welcome to Rocksolid Light

mail  files  register  newsreader  groups  login

Message-ID:  

"In short, _N is Richardian if, and only if, _N is not Richardian."


devel / comp.lang.forth / Re: FigForth vocabularies and immediacy

SubjectAuthor
* FigForth vocabularies and immediacydxforth
+- Re: FigForth vocabularies and immediacydxforth
+* Re: FigForth vocabularies and immediacynone
|`- Re: FigForth vocabularies and immediacydxforth
+* Re: FigForth vocabularies and immediacyZbig
|+- Re: FigForth vocabularies and immediacyZbig
|`* Re: FigForth vocabularies and immediacydxforth
| `* Re: FigForth vocabularies and immediacyZbig
|  +- Re: FigForth vocabularies and immediacyS Jack
|  +* Re: FigForth vocabularies and immediacyBrian Fox
|  |+* Re: FigForth vocabularies and immediacyZbig
|  ||`- Re: FigForth vocabularies and immediacyS Jack
|  |`- Re: FigForth vocabularies and immediacydxforth
|  `* Re: FigForth vocabularies and immediacydxforth
|   `* Re: FigForth vocabularies and immediacyZbig
|    `- Re: FigForth vocabularies and immediacyS Jack
+- Re: FigForth vocabularies and immediacyS Jack
+* Re: FigForth vocabularies and immediacyMyron Plichota
|`* Re: FigForth vocabularies and immediacynone
| +* Re: FigForth vocabularies and immediacyMyron Plichota
| |`* Re: FigForth vocabularies and immediacyMyron Plichota
| | `* Re: FigForth vocabularies and immediacynone
| |  `* Re: FigForth vocabularies and immediacyminforth
| |   +* Re: FigForth vocabularies and immediacynone
| |   |`- Re: FigForth vocabularies and immediacynone
| |   `* Re: FigForth vocabularies and immediacydxforth
| |    +* Re: FigForth vocabularies and immediacyminforth
| |    |`* Re: FigForth vocabularies and immediacydxforth
| |    | `* Re: FigForth vocabularies and immediacyminforth
| |    |  +* Re: FigForth vocabularies and immediacyZbig
| |    |  |+* Re: FigForth vocabularies and immediacyminforth
| |    |  ||`* Re: FigForth vocabularies and immediacyZbig
| |    |  || `- Re: FigForth vocabularies and immediacydxforth
| |    |  |`* Re: FigForth vocabularies and immediacyAnton Ertl
| |    |  | `- Re: FigForth vocabularies and immediacydxforth
| |    |  `- Re: FigForth vocabularies and immediacyAnton Ertl
| |    `* Re: FigForth vocabularies and immediacynone
| |     `* Re: FigForth vocabularies and immediacydxforth
| |      `* Re: FigForth vocabularies and immediacynone
| |       `- Re: FigForth vocabularies and immediacydxforth
| `- Re: FigForth vocabularies and immediacydxforth
`- Re: FigForth vocabularies and immediacyZbig

Pages:12
Re: FigForth vocabularies and immediacy

<nnd$057b7eed$198a9dad@aea17d011d1c73d7>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24464&group=comp.lang.forth#24464

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com> <nnd$4e59a515$02cc8e17@6abb7dc7ddf99c99>
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$057b7eed$198a9dad@aea17d011d1c73d7>
Organization: KPN B.V.
Date: Mon, 28 Aug 2023 16:32:29 +0200
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!news2.arglkargh.de!news.mixmin.net!feed.abavia.com!abe006.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 55
Injection-Date: Mon, 28 Aug 2023 16:32:29 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: none - Mon, 28 Aug 2023 14:32 UTC

In article <nnd$4e59a515$02cc8e17@6abb7dc7ddf99c99>,
none) (albert <albert@cherry.> wrote:
>In article <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>,
>minforth <minforth@arcor.de> wrote:
>>none albert schrieb am Montag, 28. August 2023 um 11:12:32 UTC+2:
>>> In article <8f22d8e9-f6a9-47c2...@googlegroups.com>,
>>> Myron Plichota <myronp...@gmail.com> wrote:
>>> >On Sunday, August 27, 2023 at 1:42:22 PM UTC-4, Myron Plichota wrote:
>>> >> > I can't understand why having immediate vocabularies is such a
>>> >> > big deal.
>>> >> You might want to work on that :)
>>> >A proven example:
>>> >\ Bugs18 assembler make script
>>> >\ by Myron Plichota myronp...@gmail.com
>>> >
>>> >Forth definitions marker -Bugs18
>>> >vocabulary Bugs18 immediate Bugs18 definitions
>>> >hex
>>> >
>>> >s" target.map" included \ the target MCU attributes
>>> >s" Bugs18asm.fs" included \ the structured assembler
>>> >s" inherited-subs.map" included \ useful subroutines in the serial bootloader
>>> >
>>> >The dictionary can be purged of the Bugs18 vocabulary by invoking -Bugs18 when it
>>> >is deemed to be of no further use.
>>> I misunderstood what I meant. The immediacy of vocabularies is not a big deal.
>>> Of course wordlist/namespace/vocabulary is useful.
>>> Not seeing the assembler words is useful. I go a step further.
>>> E.g. if you load floating point in ciforth, you can load the assembler
>>> in a separate memory area, and then remove them without a trace. It
>>> would be annoying to have the assembler hanging around if you only
>>> want floating point.
>>
>>To make it usable, ALSO and PREVIOUS would have to be immediate too, no?
>>
>
>Don't go there. If you have a STRING-VOC vocabulary, with APPEND COUNT etc.
>use STRING.APPEND STRING.COUNT etc. Less elegantly STRING. COUNT .
>In ciforth with the PREFIX facility this is an easy fix.
>: STRING-VOC. STRING NAME EVALUATE PREVIOUS ; PREFIX
This must be (of course)
: STRING. STRING-VOC NAME EVALUATE PREVIOUS ; PREFIX
>(NAME is approximately CHECK-FOR-REFILL BL WORD )
>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 spinning. - the Wise from Antrim -
--
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 spinning. - the Wise from Antrim -

Re: FigForth vocabularies and immediacy

<ucjler$22io8$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24467&group=comp.lang.forth#24467

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: dxforth@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Tue, 29 Aug 2023 12:34:02 +1000
Organization: A noiseless patient Spider
Lines: 37
Message-ID: <ucjler$22io8$1@dont-email.me>
References: <uc6jpn$3a4h7$1@dont-email.me>
<nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com>
<8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac>
<df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 29 Aug 2023 02:34:03 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="538758cbc2b656877ac47ca885b1d5a0";
logging-data="2181896"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+67+CvX1mfToPuvZVgoGvB"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.14.0
Cancel-Lock: sha1:VomQcI9DGFTCUFtgeSTFzL+c3vg=
Content-Language: en-GB
In-Reply-To: <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
 by: dxforth - Tue, 29 Aug 2023 02:34 UTC

On 28/08/2023 9:56 pm, minforth wrote:
> none albert schrieb am Montag, 28. August 2023 um 11:12:32 UTC+2:
>> In article <8f22d8e9-f6a9-47c2...@googlegroups.com>,
>> Myron Plichota <myronp...@gmail.com> wrote:
>>> On Sunday, August 27, 2023 at 1:42:22 PM UTC-4, Myron Plichota wrote:
>>>>> I can't understand why having immediate vocabularies is such a
>>>>> big deal.
>>>> You might want to work on that :)
>>> A proven example:
>>> \ Bugs18 assembler make script
>>> \ by Myron Plichota myronp...@gmail.com
>>>
>>> Forth definitions marker -Bugs18
>>> vocabulary Bugs18 immediate Bugs18 definitions
>>> hex
>>>
>>> s" target.map" included \ the target MCU attributes
>>> s" Bugs18asm.fs" included \ the structured assembler
>>> s" inherited-subs.map" included \ useful subroutines in the serial bootloader
>>>
>>> The dictionary can be purged of the Bugs18 vocabulary by invoking -Bugs18 when it
>>> is deemed to be of no further use.
>> I misunderstood what I meant. The immediacy of vocabularies is not a big deal.
>> Of course wordlist/namespace/vocabulary is useful.
>> Not seeing the assembler words is useful. I go a step further.
>> E.g. if you load floating point in ciforth, you can load the assembler
>> in a separate memory area, and then remove them without a trace. It
>> would be annoying to have the assembler hanging around if you only
>> want floating point.
>
> To make it usable, ALSO and PREVIOUS would have to be immediate too, no?

Under ONLY ALSO scheme immediate vocabulary names could be problematic as
they are often combined to represent a search order. The wrapper itself
could be made immediate. I consider vocabularies 'a necessary evil' i.e.
a last resort. The less 'stack juggling' the better :)

Re: FigForth vocabularies and immediacy

<78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24468&group=comp.lang.forth#24468

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:1a19:b0:403:996b:1390 with SMTP id f25-20020a05622a1a1900b00403996b1390mr791372qtb.11.1693288592869;
Mon, 28 Aug 2023 22:56:32 -0700 (PDT)
X-Received: by 2002:a63:7f02:0:b0:565:5555:1694 with SMTP id
a2-20020a637f02000000b0056555551694mr5171582pgd.1.1693288592408; Mon, 28 Aug
2023 22:56:32 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Mon, 28 Aug 2023 22:56:31 -0700 (PDT)
In-Reply-To: <ucjler$22io8$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=87.157.104.234; posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 87.157.104.234
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com> <8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
Subject: Re: FigForth vocabularies and immediacy
From: minforth@arcor.de (minforth)
Injection-Date: Tue, 29 Aug 2023 05:56:32 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3555
 by: minforth - Tue, 29 Aug 2023 05:56 UTC

dxforth schrieb am Dienstag, 29. August 2023 um 04:34:07 UTC+2:
> On 28/08/2023 9:56 pm, minforth wrote:
> > none albert schrieb am Montag, 28. August 2023 um 11:12:32 UTC+2:
> >> In article <8f22d8e9-f6a9-47c2...@googlegroups.com>,
> >> Myron Plichota <myronp...@gmail.com> wrote:
> >>> On Sunday, August 27, 2023 at 1:42:22 PM UTC-4, Myron Plichota wrote:
> >>>>> I can't understand why having immediate vocabularies is such a
> >>>>> big deal.
> >>>> You might want to work on that :)
> >>> A proven example:
> >>> \ Bugs18 assembler make script
> >>> \ by Myron Plichota myronp...@gmail.com
> >>>
> >>> Forth definitions marker -Bugs18
> >>> vocabulary Bugs18 immediate Bugs18 definitions
> >>> hex
> >>>
> >>> s" target.map" included \ the target MCU attributes
> >>> s" Bugs18asm.fs" included \ the structured assembler
> >>> s" inherited-subs.map" included \ useful subroutines in the serial bootloader
> >>>
> >>> The dictionary can be purged of the Bugs18 vocabulary by invoking -Bugs18 when it
> >>> is deemed to be of no further use.
> >> I misunderstood what I meant. The immediacy of vocabularies is not a big deal.
> >> Of course wordlist/namespace/vocabulary is useful.
> >> Not seeing the assembler words is useful. I go a step further.
> >> E.g. if you load floating point in ciforth, you can load the assembler
> >> in a separate memory area, and then remove them without a trace. It
> >> would be annoying to have the assembler hanging around if you only
> >> want floating point.
> >
> > To make it usable, ALSO and PREVIOUS would have to be immediate too, no?
> Under ONLY ALSO scheme immediate vocabulary names could be problematic as
> they are often combined to represent a search order. The wrapper itself
> could be made immediate. I consider vocabularies 'a necessary evil' i.e.
> a last resort. The less 'stack juggling' the better :)

I prefer proper namespace addressing:
s" Alpha Centauri " STRING::TRIM TYPE Alpha Centauri ok

Re: FigForth vocabularies and immediacy

<uckajh$25p7r$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24469&group=comp.lang.forth#24469

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: dxforth@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Tue, 29 Aug 2023 18:34:56 +1000
Organization: A noiseless patient Spider
Lines: 46
Message-ID: <uckajh$25p7r$1@dont-email.me>
References: <uc6jpn$3a4h7$1@dont-email.me>
<nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com>
<8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac>
<df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me>
<78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 29 Aug 2023 08:34:57 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="538758cbc2b656877ac47ca885b1d5a0";
logging-data="2286843"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18wW0GjdzAUs+zHnvTk5U4f"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.14.0
Cancel-Lock: sha1:jjhXLHx7eCOi4DpSEIWmuR7zyXQ=
In-Reply-To: <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
Content-Language: en-GB
 by: dxforth - Tue, 29 Aug 2023 08:34 UTC

On 29/08/2023 3:56 pm, minforth wrote:
> dxforth schrieb am Dienstag, 29. August 2023 um 04:34:07 UTC+2:
>> On 28/08/2023 9:56 pm, minforth wrote:
>>> none albert schrieb am Montag, 28. August 2023 um 11:12:32 UTC+2:
>>>> In article <8f22d8e9-f6a9-47c2...@googlegroups.com>,
>>>> Myron Plichota <myronp...@gmail.com> wrote:
>>>>> On Sunday, August 27, 2023 at 1:42:22 PM UTC-4, Myron Plichota wrote:
>>>>>>> I can't understand why having immediate vocabularies is such a
>>>>>>> big deal.
>>>>>> You might want to work on that :)
>>>>> A proven example:
>>>>> \ Bugs18 assembler make script
>>>>> \ by Myron Plichota myronp...@gmail.com
>>>>>
>>>>> Forth definitions marker -Bugs18
>>>>> vocabulary Bugs18 immediate Bugs18 definitions
>>>>> hex
>>>>>
>>>>> s" target.map" included \ the target MCU attributes
>>>>> s" Bugs18asm.fs" included \ the structured assembler
>>>>> s" inherited-subs.map" included \ useful subroutines in the serial bootloader
>>>>>
>>>>> The dictionary can be purged of the Bugs18 vocabulary by invoking -Bugs18 when it
>>>>> is deemed to be of no further use.
>>>> I misunderstood what I meant. The immediacy of vocabularies is not a big deal.
>>>> Of course wordlist/namespace/vocabulary is useful.
>>>> Not seeing the assembler words is useful. I go a step further.
>>>> E.g. if you load floating point in ciforth, you can load the assembler
>>>> in a separate memory area, and then remove them without a trace. It
>>>> would be annoying to have the assembler hanging around if you only
>>>> want floating point.
>>>
>>> To make it usable, ALSO and PREVIOUS would have to be immediate too, no?
>> Under ONLY ALSO scheme immediate vocabulary names could be problematic as
>> they are often combined to represent a search order. The wrapper itself
>> could be made immediate. I consider vocabularies 'a necessary evil' i.e.
>> a last resort. The less 'stack juggling' the better :)
>
> I prefer proper namespace addressing:
> s" Alpha Centauri " STRING::TRIM TYPE Alpha Centauri ok

Not sure what you mean. To remove leading/trailing blanks from a string I
define a word for that.

Re: FigForth vocabularies and immediacy

<d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24470&group=comp.lang.forth#24470

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:92e:b0:647:1ef1:cea4 with SMTP id dk14-20020a056214092e00b006471ef1cea4mr61387qvb.6.1693299155177;
Tue, 29 Aug 2023 01:52:35 -0700 (PDT)
X-Received: by 2002:a05:6a00:1347:b0:68a:5acb:272b with SMTP id
k7-20020a056a00134700b0068a5acb272bmr8397618pfu.3.1693299154638; Tue, 29 Aug
2023 01:52:34 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Tue, 29 Aug 2023 01:52:33 -0700 (PDT)
In-Reply-To: <uckajh$25p7r$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2003:f7:1f0d:89f5:1d9b:a8dd:91c:f11;
posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 2003:f7:1f0d:89f5:1d9b:a8dd:91c:f11
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com> <8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me> <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
<uckajh$25p7r$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
Subject: Re: FigForth vocabularies and immediacy
From: minforth@arcor.de (minforth)
Injection-Date: Tue, 29 Aug 2023 08:52:35 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 4162
 by: minforth - Tue, 29 Aug 2023 08:52 UTC

dxforth schrieb am Dienstag, 29. August 2023 um 10:35:02 UTC+2:
> On 29/08/2023 3:56 pm, minforth wrote:
> > dxforth schrieb am Dienstag, 29. August 2023 um 04:34:07 UTC+2:
> >> On 28/08/2023 9:56 pm, minforth wrote:
> >>> none albert schrieb am Montag, 28. August 2023 um 11:12:32 UTC+2:
> >>>> In article <8f22d8e9-f6a9-47c2...@googlegroups.com>,
> >>>> Myron Plichota <myronp...@gmail.com> wrote:
> >>>>> On Sunday, August 27, 2023 at 1:42:22 PM UTC-4, Myron Plichota wrote:
> >>>>>>> I can't understand why having immediate vocabularies is such a
> >>>>>>> big deal.
> >>>>>> You might want to work on that :)
> >>>>> A proven example:
> >>>>> \ Bugs18 assembler make script
> >>>>> \ by Myron Plichota myronp...@gmail.com
> >>>>>
> >>>>> Forth definitions marker -Bugs18
> >>>>> vocabulary Bugs18 immediate Bugs18 definitions
> >>>>> hex
> >>>>>
> >>>>> s" target.map" included \ the target MCU attributes
> >>>>> s" Bugs18asm.fs" included \ the structured assembler
> >>>>> s" inherited-subs.map" included \ useful subroutines in the serial bootloader
> >>>>>
> >>>>> The dictionary can be purged of the Bugs18 vocabulary by invoking -Bugs18 when it
> >>>>> is deemed to be of no further use.
> >>>> I misunderstood what I meant. The immediacy of vocabularies is not a big deal.
> >>>> Of course wordlist/namespace/vocabulary is useful.
> >>>> Not seeing the assembler words is useful. I go a step further.
> >>>> E.g. if you load floating point in ciforth, you can load the assembler
> >>>> in a separate memory area, and then remove them without a trace. It
> >>>> would be annoying to have the assembler hanging around if you only
> >>>> want floating point.
> >>>
> >>> To make it usable, ALSO and PREVIOUS would have to be immediate too, no?
> >> Under ONLY ALSO scheme immediate vocabulary names could be problematic as
> >> they are often combined to represent a search order. The wrapper itself
> >> could be made immediate. I consider vocabularies 'a necessary evil' i.e.
> >> a last resort. The less 'stack juggling' the better :)
> >
> > I prefer proper namespace addressing:
> > s" Alpha Centauri " STRING::TRIM TYPE Alpha Centauri ok
> Not sure what you mean. To remove leading/trailing blanks from a string I
> define a word for that.

STRING::TRIM -> the word is TRIM to be found in the STRING namespace (vocabulary)

STRING::TRIM is one parsed name without blanks (:: is a separator)

Re: FigForth vocabularies and immediacy

<nnd$6661a278$7bbd74ad@ef2834c0074f1ffc>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24471&group=comp.lang.forth#24471

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com> <ucjler$22io8$1@dont-email.me>
Subject: Re: FigForth vocabularies and immediacy
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$6661a278$7bbd74ad@ef2834c0074f1ffc>
Organization: KPN B.V.
Date: Tue, 29 Aug 2023 10:53:14 +0200
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!feed.abavia.com!abe005.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 26
Injection-Date: Tue, 29 Aug 2023 10:53:14 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
X-Received-Bytes: 1899
 by: none - Tue, 29 Aug 2023 08:53 UTC

In article <ucjler$22io8$1@dont-email.me>, dxforth <dxforth@gmail.com> wrote:
>
>Under ONLY ALSO scheme immediate vocabulary names could be problematic as
>they are often combined to represent a search order. The wrapper itself
>could be made immediate. I consider vocabularies 'a necessary evil' i.e.
>a last resort. The less 'stack juggling' the better :)
>

On the contrary. wordlists (namespace, vocabulary) are instrumental for
extending the language.
In my recent lisp effort (MAL) i have
- the Forth environment where I compile
- the lisp user interface, behaves like lisp.
- a separate wordlist where I accumulate the words used in lisp,
using the search mechanism present in Forth.

If wordlist were not there, I am obliged to invent them.

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 spinning. - the Wise from Antrim -

Re: FigForth vocabularies and immediacy

<4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24472&group=comp.lang.forth#24472

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ad4:4f90:0:b0:649:c46a:2255 with SMTP id em16-20020ad44f90000000b00649c46a2255mr693654qvb.8.1693300764678;
Tue, 29 Aug 2023 02:19:24 -0700 (PDT)
X-Received: by 2002:a63:6d47:0:b0:56a:750e:d79d with SMTP id
i68-20020a636d47000000b0056a750ed79dmr4874049pgc.10.1693300764412; Tue, 29
Aug 2023 02:19:24 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Tue, 29 Aug 2023 02:19:23 -0700 (PDT)
In-Reply-To: <d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=83.22.107.239; posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 83.22.107.239
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com> <8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me> <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
<uckajh$25p7r$1@dont-email.me> <d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com>
Subject: Re: FigForth vocabularies and immediacy
From: zbigniew2011@gmail.com (Zbig)
Injection-Date: Tue, 29 Aug 2023 09:19:24 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2209
 by: Zbig - Tue, 29 Aug 2023 09:19 UTC

> > > I prefer proper namespace addressing:
> > > s" Alpha Centauri " STRING::TRIM TYPE Alpha Centauri ok
> > Not sure what you mean. To remove leading/trailing blanks from a string I
> > define a word for that.
> STRING::TRIM -> the word is TRIM to be found in the STRING namespace (vocabulary)
>
> STRING::TRIM is one parsed name without blanks (:: is a separator)

But you are aware, that this means nothing more than using very long name?
Not having any „namespaces” included one can simply use the names like
STRING::TRIM and voila, „look, I use namespaces!”.

Re: FigForth vocabularies and immediacy

<e7221fb1-5b39-4dd3-b4b9-84ba4d5d42b3n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24473&group=comp.lang.forth#24473

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:1653:b0:412:2107:7f1d with SMTP id y19-20020a05622a165300b0041221077f1dmr315654qtj.7.1693301896994;
Tue, 29 Aug 2023 02:38:16 -0700 (PDT)
X-Received: by 2002:ad4:4b6f:0:b0:64a:5473:41e9 with SMTP id
m15-20020ad44b6f000000b0064a547341e9mr865945qvx.0.1693301896837; Tue, 29 Aug
2023 02:38:16 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Tue, 29 Aug 2023 02:38:16 -0700 (PDT)
In-Reply-To: <4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2003:f7:1f0d:89f5:1d9b:a8dd:91c:f11;
posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 2003:f7:1f0d:89f5:1d9b:a8dd:91c:f11
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com> <8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me> <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
<uckajh$25p7r$1@dont-email.me> <d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
<4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <e7221fb1-5b39-4dd3-b4b9-84ba4d5d42b3n@googlegroups.com>
Subject: Re: FigForth vocabularies and immediacy
From: minforth@arcor.de (minforth)
Injection-Date: Tue, 29 Aug 2023 09:38:16 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: minforth - Tue, 29 Aug 2023 09:38 UTC

Zbig schrieb am Dienstag, 29. August 2023 um 11:19:26 UTC+2:
> > > > I prefer proper namespace addressing:
> > > > s" Alpha Centauri " STRING::TRIM TYPE Alpha Centauri ok
> > > Not sure what you mean. To remove leading/trailing blanks from a string I
> > > define a word for that.
> > STRING::TRIM -> the word is TRIM to be found in the STRING namespace (vocabulary)
> >
> > STRING::TRIM is one parsed name without blanks (:: is a separator)
> But you are aware, that this means nothing more than using very long name?
> Not having any „namespaces” included one can simply use the names like
> STRING::TRIM and voila, „look, I use namespaces!”.

Pardon me, but this is nonsense. STRING:: affects/improves/focusses the search mechanism.
It is separated and processed from STRING::TRIM by a recognizer.

Consider nested namespaces (wordlists) like I use for linear algebra, you must be hit with a
paddle if you prepend hundreds of words with some lengthy ID string.

Obviously this is all non-standard.

Re: FigForth vocabularies and immediacy

<3cff5e9b-496e-4ecb-a600-ef9df3c334c0n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24474&group=comp.lang.forth#24474

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:248f:b0:76e:e881:5ed5 with SMTP id i15-20020a05620a248f00b0076ee8815ed5mr833480qkn.13.1693303128208;
Tue, 29 Aug 2023 02:58:48 -0700 (PDT)
X-Received: by 2002:a05:6a00:2da6:b0:68b:e4ad:c83a with SMTP id
fb38-20020a056a002da600b0068be4adc83amr5146272pfb.5.1693303127890; Tue, 29
Aug 2023 02:58:47 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Tue, 29 Aug 2023 02:58:47 -0700 (PDT)
In-Reply-To: <e7221fb1-5b39-4dd3-b4b9-84ba4d5d42b3n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=83.22.107.239; posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 83.22.107.239
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com> <8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me> <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
<uckajh$25p7r$1@dont-email.me> <d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
<4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com> <e7221fb1-5b39-4dd3-b4b9-84ba4d5d42b3n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <3cff5e9b-496e-4ecb-a600-ef9df3c334c0n@googlegroups.com>
Subject: Re: FigForth vocabularies and immediacy
From: zbigniew2011@gmail.com (Zbig)
Injection-Date: Tue, 29 Aug 2023 09:58:48 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3086
 by: Zbig - Tue, 29 Aug 2023 09:58 UTC

> > But you are aware, that this means nothing more than using very long name?
> > Not having any „namespaces” included one can simply use the names like
> > STRING::TRIM and voila, „look, I use namespaces!”.
> Pardon me, but this is nonsense. STRING:: affects/improves/focusses the search mechanism.
> It is separated and processed from STRING::TRIM by a recognizer.

Having defined such „long-named” word one doesn't need any
particular search mechanism different to the standard one. Such
word simply has different name than others — whether it has two
colons middle of its name or, say, two „A” letters.

> Consider nested namespaces (wordlists) like I use for linear algebra, you must be hit with a
> paddle if you prepend hundreds of words with some lengthy ID string.
>
> Obviously this is all non-standard.

Long ago, when learning TCL, I quickly realized it's kind od „cheating”.
So there's a procedure named, say, ::aaa::bbb::cccc::name, but there
are some „helper procedures” that allow to use (in particular conditions)
just the „name”, without the prefix „::aaa::bbb::cccc”.
So in Forth that „helper procedure” is simply the name of particular vocabulary.

Re: FigForth vocabularies and immediacy

<ucm6kk$2f6c1$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24476&group=comp.lang.forth#24476

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: dxforth@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Wed, 30 Aug 2023 11:39:33 +1000
Organization: A noiseless patient Spider
Lines: 24
Message-ID: <ucm6kk$2f6c1$1@dont-email.me>
References: <uc6jpn$3a4h7$1@dont-email.me>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac>
<df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me> <nnd$6661a278$7bbd74ad@ef2834c0074f1ffc>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 30 Aug 2023 01:39:33 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="4e47dbfa0e6407e81c9327150e9dc5c1";
logging-data="2595201"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+OjogpDdaiL0ywwy4/QF/y"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.14.0
Cancel-Lock: sha1:4KRQdZjgCY3NT5cLY3cW2dqjJOI=
In-Reply-To: <nnd$6661a278$7bbd74ad@ef2834c0074f1ffc>
Content-Language: en-GB
 by: dxforth - Wed, 30 Aug 2023 01:39 UTC

On 29/08/2023 6:53 pm, albert wrote:
> In article <ucjler$22io8$1@dont-email.me>, dxforth <dxforth@gmail.com> wrote:
>>
>> Under ONLY ALSO scheme immediate vocabulary names could be problematic as
>> they are often combined to represent a search order. The wrapper itself
>> could be made immediate. I consider vocabularies 'a necessary evil' i.e.
>> a last resort. The less 'stack juggling' the better :)
>>
>
> On the contrary. wordlists (namespace, vocabulary) are instrumental for
> extending the language.
> In my recent lisp effort (MAL) i have
> - the Forth environment where I compile
> - the lisp user interface, behaves like lisp.
> - a separate wordlist where I accumulate the words used in lisp,
> using the search mechanism present in Forth.
>
> If wordlist were not there, I am obliged to invent them.

You are doing all this because it's necessary - or because you want to?
If the latter, then nobody else is obligated.

Re: FigForth vocabularies and immediacy

<ucmas7$2jjo8$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24477&group=comp.lang.forth#24477

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: dxforth@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Wed, 30 Aug 2023 12:51:50 +1000
Organization: A noiseless patient Spider
Lines: 26
Message-ID: <ucmas7$2jjo8$1@dont-email.me>
References: <uc6jpn$3a4h7$1@dont-email.me>
<nnd$05c9fd9b$02d455f5@e4904aac86821e73>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com>
<8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac>
<df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me>
<78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
<uckajh$25p7r$1@dont-email.me>
<d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
<4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com>
<e7221fb1-5b39-4dd3-b4b9-84ba4d5d42b3n@googlegroups.com>
<3cff5e9b-496e-4ecb-a600-ef9df3c334c0n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 30 Aug 2023 02:51:51 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="4e47dbfa0e6407e81c9327150e9dc5c1";
logging-data="2739976"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+6a/rDKM/H5cXzeGMvzp/0"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.14.0
Cancel-Lock: sha1:5pVOL5iLuts0EIhKf4ZzSq6vMkM=
In-Reply-To: <3cff5e9b-496e-4ecb-a600-ef9df3c334c0n@googlegroups.com>
Content-Language: en-GB
 by: dxforth - Wed, 30 Aug 2023 02:51 UTC

On 29/08/2023 7:58 pm, Zbig wrote:
>>> But you are aware, that this means nothing more than using very long name?
>>> Not having any „namespaces” included one can simply use the names like
>>> STRING::TRIM and voila, „look, I use namespaces!”.
>> Pardon me, but this is nonsense. STRING:: affects/improves/focusses the search mechanism.
>> It is separated and processed from STRING::TRIM by a recognizer.
>
> Having defined such „long-named” word one doesn't need any
> particular search mechanism different to the standard one. Such
> word simply has different name than others — whether it has two
> colons middle of its name or, say, two „A” letters.
>
>> Consider nested namespaces (wordlists) like I use for linear algebra, you must be hit with a
>> paddle if you prepend hundreds of words with some lengthy ID string.
>>
>> Obviously this is all non-standard.
>
> Long ago, when learning TCL, I quickly realized it's kind od „cheating”.
> So there's a procedure named, say, ::aaa::bbb::cccc::name, but there
> are some „helper procedures” that allow to use (in particular conditions)
> just the „name”, without the prefix „::aaa::bbb::cccc”.
> So in Forth that „helper procedure” is simply the name of particular vocabulary.

Forth needs to dump the 'words and numbers separated by spaces' concept.
Infixing is the future :)

Re: FigForth vocabularies and immediacy

<2023Aug30.080928@mips.complang.tuwien.ac.at>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24479&group=comp.lang.forth#24479

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Wed, 30 Aug 2023 06:09:28 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 26
Message-ID: <2023Aug30.080928@mips.complang.tuwien.ac.at>
References: <uc6jpn$3a4h7$1@dont-email.me> <nnd$05c9fd9b$02d455f5@e4904aac86821e73> <4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com> <8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com> <nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com> <ucjler$22io8$1@dont-email.me> <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com> <uckajh$25p7r$1@dont-email.me> <d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
Injection-Info: dont-email.me; posting-host="803768ae39bc161e29acb2b2c4bf386a";
logging-data="2779079"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18S7zDBweoeSCJsfKlUL+0T"
Cancel-Lock: sha1:s+O8Loj76OWGtSuicve88ojMOyI=
X-newsreader: xrn 10.11
 by: Anton Ertl - Wed, 30 Aug 2023 06:09 UTC

minforth <minforth@arcor.de> writes:
>STRING::TRIM -> the word is TRIM to be found in the STRING namespace (voca=
>bulary)
>
>STRING::TRIM is one parsed name without blanks (:: is a separator)

In development Gforth the scope recognizer is installed by default,
but the syntax is slightly different (Output marked with preceding "\ "):

vocabulary string \ ok
string definitions \ ok
: foo ." foo" ; \ ok
forth \ ok
foo
\ *the terminal*:5:1: error: Undefined word
\ >>>foo<<<
\ Backtrace:
\ kernel/int.fs:317:10: 0 $7F118CEA83F0 throw
string:foo \ foo ok

- 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: https://forth-standard.org/
EuroForth 2023: https://euro.theforth.net/2023

Re: FigForth vocabularies and immediacy

<2023Aug30.081158@mips.complang.tuwien.ac.at>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24480&group=comp.lang.forth#24480

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!news.chmurka.net!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: anton@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Wed, 30 Aug 2023 06:11:58 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 47
Message-ID: <2023Aug30.081158@mips.complang.tuwien.ac.at>
References: <uc6jpn$3a4h7$1@dont-email.me> <4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com> <8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com> <nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac> <df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com> <ucjler$22io8$1@dont-email.me> <78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com> <uckajh$25p7r$1@dont-email.me> <d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com> <4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com>
Injection-Info: dont-email.me; posting-host="803768ae39bc161e29acb2b2c4bf386a";
logging-data="2785903"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18+MHY0QRnnRW18p/bArnG/"
Cancel-Lock: sha1:6Ls3t0Syu9AbGI5TUOCGipNFxNc=
X-newsreader: xrn 10.11
 by: Anton Ertl - Wed, 30 Aug 2023 06:11 UTC

Zbig <zbigniew2011@gmail.com> writes:
>But you are aware, that this means nothing more than using very long name?
>Not having any =E2=80=9Enamespaces=E2=80=9D included one can simply use the=
> names like
>STRING::TRIM and voila, =E2=80=9Elook, I use namespaces!=E2=80=9D.

Yes, that's a traditional Forth technique. However, Joerg Voelker
reported that for his applications, he cannot afford the memory needed
by this technique.

One can also do

ALSO STRING

and then just use TRIM, which may be useful in a piece of code that
uses lots of STRING words.

One disadvantage of the latter technique is that you do not directly
see in the source in what namespace TRIM is.

One disadvantage of the scope recognizer is that not all words that
take a word name can handle a scope recognizer passed to it. E.g., at
the moment

locate string:foo
' string:foo
`string:foo \ xt
``string:foo \ nt
postpone string:foo

work, but

see string:foo

does not. And

``string:foo id.

(and likewise, the decompiler) prints "foo" even when STRING is not in
the search order. Work to do.

- 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: https://forth-standard.org/
EuroForth 2023: https://euro.theforth.net/2023

Re: FigForth vocabularies and immediacy

<ucmsuh$2lkd7$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24481&group=comp.lang.forth#24481

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: dxforth@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Wed, 30 Aug 2023 18:00:17 +1000
Organization: A noiseless patient Spider
Lines: 17
Message-ID: <ucmsuh$2lkd7$1@dont-email.me>
References: <uc6jpn$3a4h7$1@dont-email.me>
<4d5a59cf-f26d-4a07-9008-af6e49110ea0n@googlegroups.com>
<8f22d8e9-f6a9-47c2-a47d-96ecc010a7c8n@googlegroups.com>
<nnd$6a8d0052$6054062f@b6fbbbd7beb0d8ac>
<df3fb5d0-e851-40bf-95f0-8dc7a569c7cfn@googlegroups.com>
<ucjler$22io8$1@dont-email.me>
<78dc275c-e076-4a26-9717-06c6cc0f8428n@googlegroups.com>
<uckajh$25p7r$1@dont-email.me>
<d7c0b969-2a93-4203-8d66-ca148d583f39n@googlegroups.com>
<4cf386d9-e1dd-4026-9d4e-e60b4b4caedan@googlegroups.com>
<2023Aug30.081158@mips.complang.tuwien.ac.at>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 30 Aug 2023 08:00:17 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="4e47dbfa0e6407e81c9327150e9dc5c1";
logging-data="2806183"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/Bu//UrUFTCjQkWxO+8yV0"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.14.0
Cancel-Lock: sha1:aCG0/ovc1AiqQJeKNRZeQMuGW4k=
In-Reply-To: <2023Aug30.081158@mips.complang.tuwien.ac.at>
Content-Language: en-GB
 by: dxforth - Wed, 30 Aug 2023 08:00 UTC

On 30/08/2023 4:11 pm, Anton Ertl wrote:
> Zbig <zbigniew2011@gmail.com> writes:
>> But you are aware, that this means nothing more than using very long name?
>> Not having any =E2=80=9Enamespaces=E2=80=9D included one can simply use the=
>> names like
>> STRING::TRIM and voila, =E2=80=9Elook, I use namespaces!=E2=80=9D.
>
> Yes, that's a traditional Forth technique. However, Joerg Voelker
> reported that for his applications, he cannot afford the memory needed
> by this technique.

Including never-used words also wastes memory, irrespective of naming or
vocabularies. I note 4tH libraries are very granular loading only what's
necessary. As space-saving strategies go, this appears optimum.

Re: FigForth vocabularies and immediacy

<nnd$192bb17b$3b660091@513d5645c27f26a3>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24482&group=comp.lang.forth#24482

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <uc6jpn$3a4h7$1@dont-email.me> <ucjler$22io8$1@dont-email.me> <nnd$6661a278$7bbd74ad@ef2834c0074f1ffc> <ucm6kk$2f6c1$1@dont-email.me>
Subject: Re: FigForth vocabularies and immediacy
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$192bb17b$3b660091@513d5645c27f26a3>
Organization: KPN B.V.
Date: Wed, 30 Aug 2023 10:04:49 +0200
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!feed.abavia.com!abe006.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 79
Injection-Date: Wed, 30 Aug 2023 10:04:49 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: none - Wed, 30 Aug 2023 08:04 UTC

In article <ucm6kk$2f6c1$1@dont-email.me>, dxforth <dxforth@gmail.com> wrote:
>On 29/08/2023 6:53 pm, albert wrote:
>> In article <ucjler$22io8$1@dont-email.me>, dxforth <dxforth@gmail.com> wrote:
>>>
>>> Under ONLY ALSO scheme immediate vocabulary names could be problematic as
>>> they are often combined to represent a search order. The wrapper itself
>>> could be made immediate. I consider vocabularies 'a necessary evil' i.e.
>>> a last resort. The less 'stack juggling' the better :)
>>>
>>
>> On the contrary. wordlists (namespace, vocabulary) are instrumental for
>> extending the language.
>> In my recent lisp effort (MAL) i have
>> - the Forth environment where I compile
>> - the lisp user interface, behaves like lisp.
>> - a separate wordlist where I accumulate the words used in lisp,
>> using the search mechanism present in Forth.
>>
>> If wordlist were not there, I am obliged to invent them.
>
>You are doing all this because it's necessary - or because you want to?
>If the latter, then nobody else is obligated.

If you don't want to write programs, you don't need to.
Obviously.

In MAL you start up with a lisp interface and prompt:
"
user>(def! a 2)
2
user>(+ 1 a)
3
user>(forth)

2 CONSTANT a
OK
1 a + .
3 OK
main
user>
"
Hard to do (if near impossible) without name spaces, i.e.
switching the topmost wordlist.

Under the hood/bonnet:

\ ---------------- lisp --------------------
:R read-str SET-SRC empty()
lisp-namespace lisp-on INTERPRET PREVIOUS lisp-off build-ast ;

: rep read-str 'repl_env >WID eval_ast print-ast ;

: repl BEGIN prompt (ACCEPT) rep AGAIN ;

\ ---------------- forth -------------------
: main BEGIN ARGC 1 > WHILE handle-options SHIFT-ARGS REPEAT
BEGIN
'[ , R0 @ RSP! S0 @ DSP! \ ..... 1
'repl CATCH DUP -32 = IF BYE THEN
ONLY FORTH ERROR
AGAIN ;

\ ------------------------------------------

There are wordlists used by the lisp interpreter for environments.
One of them constains:
"
: forth QUIT ; #func type!
"

Groetjes Albert
1)
'[ , just means POSTPONE [
--
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 spinning. - the Wise from Antrim -

Re: FigForth vocabularies and immediacy

<f8867d87-0e42-4c0d-9365-530dd33b3329n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24483&group=comp.lang.forth#24483

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:900b:b0:76e:f8bb:ff6 with SMTP id rk11-20020a05620a900b00b0076ef8bb0ff6mr43065qkn.0.1693396740273;
Wed, 30 Aug 2023 04:59:00 -0700 (PDT)
X-Received: by 2002:a17:90a:c68a:b0:26d:19eb:d861 with SMTP id
n10-20020a17090ac68a00b0026d19ebd861mr474814pjt.9.1693396739754; Wed, 30 Aug
2023 04:58:59 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Wed, 30 Aug 2023 04:58:58 -0700 (PDT)
In-Reply-To: <uc6jpn$3a4h7$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=83.22.108.88; posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 83.22.108.88
References: <uc6jpn$3a4h7$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <f8867d87-0e42-4c0d-9365-530dd33b3329n@googlegroups.com>
Subject: Re: FigForth vocabularies and immediacy
From: zbigniew2011@gmail.com (Zbig)
Injection-Date: Wed, 30 Aug 2023 11:59:00 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Zbig - Wed, 30 Aug 2023 11:58 UTC

To get back on-topic I'm pasting the quote from the docs
of Mary Bell's fig-Forth V2.32:

Vocabularies: Immediate or Not?

As was seen in the prior examples the creation of a new vocabulary is exceedingly easy, though deciding where they should be located can be a complex process. In addition, a vocabulary like any word defined within the address space can optionally be "immediate," or acted upon by the compiler the moment it is parsed from the input stream. When this quality is applied to vocabularies it allows for on-the-fly search order changes, but only to the extent of the top Search Order Buffer item. As an example;

80386 fig-FORTH v2.32

Implemented 04/09/03 by MB

VOCABULARY MYTASK IMMEDIATE OK.

MYTASK DEFINITIONS OK.

: NEW-WORD 9 0 DO I . LOOP ; OK.

PREVIOUS DEFINITIONS OK.

: TEST-WORD ." HI!" CR NEW-WORD CR ; NEW-WORD? Huh?

: TEST-WORD ." HI!" CR MYTASK NEW-WORD FORTH CR ; OK.

Examine the last two user lines carefully. The first line failed because the MYTASK vocabulary was removed from the search order by the PREVIOUS DEFINITIONS line before defining TEST-WORD, while the second line succeeded because the MYTASK word in the line forced the temporary replacement of the top search item within the listing. On the other hand if the MYTASK vocabulary is not made immediate, the following will occur;

80386 fig-FORTH v2.32

Implemented 04/09/03 by MB

VOCABULARY MYTASK OK.

MYTASK DEFINITIONS OK.

: NEW-WORD 9 0 DO I . LOOP ; OK.

PREVIOUS DEFINITIONS OK.

: TEST-WORD ." HI!" CR NEW-WORD CR ; NEW-WORD? Huh?

: TEST-WORD ." HI!" CR MYTASK NEW-WORD FORTH CR ; NEW-WORD? Huh?

In this case the compiler has added the token address of the MYTASK vocabulary word to the TEST-WORD list rather than executing the vocabulary function to change the search order. If such a reference is desired without making the target vocabulary immediate there are two options; 1) add the vocabulary to the search order given in the methods mentioned earlier, or 2) manually execute the referenced vocabulary as in the following definition;

: TEST-WORD ." HI!" CR [ MYTASK ] NEW-WORD FORTH CR ;

Whether or not a vocabulary is made immediate is optional depending upon its intended use, such as in the case in where the vocabulary which forms complete subroutine and is not expected to have many references to it by outside programs. (Such as the EDITOR which has a single entry point, and two references which are added to the root path.)

If a vocabulary is not immediate as in the prior example, this allows Forth to change the active search order to meet the specified task. An example would be in a case where the user is expected to enter data containing highly different search parameters, such as typing the names of automobiles in one case and those of baseball stars in another. If both vocabularies are not made immediate and the user switches between search programs, this allows that the compiler can actively change the search order between the two functions;

: SWITCH VOC 1 TOGGLE VOC @ IF AUTOMOBILE ELSE BASEBALL THEN ;

Such a statement will change the current search order from within an application, using a single variable to hold notice of the change as the operation continues.

Re: FigForth vocabularies and immediacy

<ucot4r$333mm$1@dont-email.me>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24484&group=comp.lang.forth#24484

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: dxforth@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: FigForth vocabularies and immediacy
Date: Thu, 31 Aug 2023 12:15:56 +1000
Organization: A noiseless patient Spider
Lines: 52
Message-ID: <ucot4r$333mm$1@dont-email.me>
References: <uc6jpn$3a4h7$1@dont-email.me> <ucjler$22io8$1@dont-email.me>
<nnd$6661a278$7bbd74ad@ef2834c0074f1ffc> <ucm6kk$2f6c1$1@dont-email.me>
<nnd$192bb17b$3b660091@513d5645c27f26a3>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Date: Thu, 31 Aug 2023 02:15:56 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="376907fbb0b0390dfe1abbbb331aef88";
logging-data="3247830"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19UCxQ+YzKrfPxPPdDI7Mz5"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.14.0
Cancel-Lock: sha1:TXhQTtDl0ipiSUCYV5eQJqnMmfM=
In-Reply-To: <nnd$192bb17b$3b660091@513d5645c27f26a3>
Content-Language: en-GB
 by: dxforth - Thu, 31 Aug 2023 02:15 UTC

On 30/08/2023 6:04 pm, albert wrote:
> In article <ucm6kk$2f6c1$1@dont-email.me>, dxforth <dxforth@gmail.com> wrote:
>> On 29/08/2023 6:53 pm, albert wrote:
>>> In article <ucjler$22io8$1@dont-email.me>, dxforth <dxforth@gmail.com> wrote:
>>>>
>>>> Under ONLY ALSO scheme immediate vocabulary names could be problematic as
>>>> they are often combined to represent a search order. The wrapper itself
>>>> could be made immediate. I consider vocabularies 'a necessary evil' i.e.
>>>> a last resort. The less 'stack juggling' the better :)
>>>>
>>>
>>> On the contrary. wordlists (namespace, vocabulary) are instrumental for
>>> extending the language.
>>> In my recent lisp effort (MAL) i have
>>> - the Forth environment where I compile
>>> - the lisp user interface, behaves like lisp.
>>> - a separate wordlist where I accumulate the words used in lisp,
>>> using the search mechanism present in Forth.
>>>
>>> If wordlist were not there, I am obliged to invent them.
>>
>> You are doing all this because it's necessary - or because you want to?
>> If the latter, then nobody else is obligated.
>
> If you don't want to write programs, you don't need to.
> Obviously.
>
> In MAL you start up with a lisp interface and prompt:
> "
> user>(def! a 2)
> 2
> user>(+ 1 a)
> 3
> user>(forth)
>
> 2 CONSTANT a
> OK
> 1 a + .
> 3 OK
> main
> user>
> "
> Hard to do (if near impossible) without name spaces, i.e.
> switching the topmost wordlist.

Other languages have achieved the same without anything special. If there's
one language that's shown itself to be the master of disguise, surely it has
been C. One need only look at how many forthers it has fooled :)

Pages:12
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor