Rocksolid Light

Welcome to Rocksolid Light

mail  files  register  newsreader  groups  login

Message-ID:  

Never test for an error condition you don't know how to handle. -- Steinbach


devel / comp.lang.forth / Proposal on LATEST-NAME

SubjectAuthor
* Proposal on LATEST-NAMERuvim
+* Re: Proposal on LATEST-NAMEnone
|`* Re: Proposal on LATEST-NAMERuvim
| +* Re: Proposal on LATEST-NAMEMarcel Hendrix
| |+- Re: Proposal on LATEST-NAMERuvim
| |`- Re: Proposal on LATEST-NAMEAnton Ertl
| `* Re: Proposal on LATEST-NAMEnone
|  `* Re: Proposal on LATEST-NAMERuvim
|   `* Re: Proposal on LATEST-NAMEnone
|    +- Re: Proposal on LATEST-NAMES Jack
|    `- Re: Proposal on LATEST-NAMERuvim
+* Re: Proposal on LATEST-NAMEminforth
|+* Re: Proposal on LATEST-NAMERuvim
||+* Re: Proposal on LATEST-NAMEminforth
|||`* Re: Proposal on LATEST-NAMERuvim
||| `* Re: Proposal on LATEST-NAMEminforth
|||  +* Re: Proposal on LATEST-NAMEdxf
|||  |`- Re: Proposal on LATEST-NAMEminforth
|||  `- package manager (was: Proposal on LATEST-NAME)Ruvim
||`* decorators (was Re: Proposal on LATEST-NAME )none
|| `* Re: decorators (was Re: Proposal on LATEST-NAME )Ruvim
||  `- Re: decorators (was Re: Proposal on LATEST-NAME )none
|`- Re: Proposal on LATEST-NAMEnone
`* Re: Proposal on LATEST-NAMEdxf
 `* Re: Proposal on LATEST-NAMEdxf
  `- Re: Proposal on LATEST-NAMERuvim

Pages:12
Proposal on LATEST-NAME

<uh5vno$36el4$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Proposal on LATEST-NAME
Date: Mon, 23 Oct 2023 14:24:54 +0000
Organization: A noiseless patient Spider
Lines: 24
Message-ID: <uh5vno$36el4$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 23 Oct 2023 14:24:57 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="b5fd20fb0b1e519ea4c7fddbc1c44f0e";
logging-data="3357348"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/qjvZ8HAFet/qysTAoD//w"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:6kBDdn1vxsVDyCfb7uAClZiuBq8=
Content-Language: en-US
 by: Ruvim - Mon, 23 Oct 2023 14:24 UTC

I prepared a proposal: New words: latest-name and latest-name-in [1]

In a nutshell:

LATEST-NAME-IN ( wid -- nt|0 )
Remove the word list identifier wid from the stack. If this word list is
empty, then return 0, otherwise return the name token nt for the
definition that was placed most recently into this word list.

LATEST-NAME ( -- nt )
Return the name token nt for the definition that was placed most
recently into the compilation word list, if such definition exists.
Otherwise throw exception code -80.

Feedback is welcome!

[1]
https://forth-standard.org/proposals/new-words-latest-name-and-latest-name-in?hideDiff#reply-1124

--
Ruvim

Re: Proposal on LATEST-NAME

<nnd$5b8a6569$42779f55@a3b614384d5c49fc>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <uh5vno$36el4$1@dont-email.me>
Subject: Re: Proposal on LATEST-NAME
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$5b8a6569$42779f55@a3b614384d5c49fc>
Organization: KPN B.V.
Date: Mon, 23 Oct 2023 17:04:45 +0200
Path: i2pn2.org!i2pn.org!news.chmurka.net!weretis.net!feeder8.news.weretis.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer02.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!feed.abavia.com!abe006.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 71
Injection-Date: Mon, 23 Oct 2023 17:04:45 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
X-Received-Bytes: 3226
 by: none - Mon, 23 Oct 2023 15:04 UTC

In article <uh5vno$36el4$1@dont-email.me>,
Ruvim <ruvim.pinka@gmail.com> wrote:
>I prepared a proposal: New words: latest-name and latest-name-in [1]
>
>In a nutshell:
>
>LATEST-NAME-IN ( wid -- nt|0 )
>Remove the word list identifier wid from the stack. If this word list is
>empty, then return 0, otherwise return the name token nt for the
>definition that was placed most recently into this word list.
>
>LATEST-NAME ( -- nt )
>Return the name token nt for the definition that was placed most
>recently into the compilation word list, if such definition exists.
>Otherwise throw exception code -80.
>
>Feedback is welcome!

I hate to see NAME here. I advocate dea (dictionary entry address)
since 1993 , working on the transputer Forth with Marcel Hendrix.
There were N fields and N^2 transformation and I have had
enough of it.

I recently wrote a design to lispificate / dynamicate Forth.
In this idea all items are dynamically located.
The first step is to ALLOCATE all name strings,
filling the name fields with a dynamic memory pointer.
The first benefit is that you can replace DROP by a Chinese equivalent
name etc. and have a Chinese friendly Forth.
......
The process ends with dynamically allocating all the headers
and a total dynamical Forth.

[ Then you can fill in the source field
with a dynamically allocated source string.
You then can edit the source and compile and change the code,
ultimately transforming the Forth from inside itself.
This was the original idea of "computer intelligence Forth"
and I have not really giving up on it. ]

***********************************************************
* Names are SO not determining the identity of a word. *
***********************************************************

I'm not against your proposal, only the names are wrong.

>LATEST ( wid -- dea|0 )
LATEST ( -- dea )

>[1]
>https://forth-standard.org/proposals/new-words-latest-name-and-latest-name-in?hideDiff#reply-1124
>Ruvim

Groetjes Albert

P.S. I use LATEST all over the place. I have a hard time to imagine
a use for >LATEST. Unless ..

Only define >LATEST. LATEST might be controversial so you avoid
standardising it.
On the top of the file you then can say
: LATEST CURRENT @ >LATEST ;
And get it over with.
Same situation as with
: NOT 0= ;
--
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: Proposal on LATEST-NAME

<uh63vl$37cua$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.net!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
Date: Mon, 23 Oct 2023 15:37:23 +0000
Organization: A noiseless patient Spider
Lines: 79
Message-ID: <uh63vl$37cua$1@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<nnd$5b8a6569$42779f55@a3b614384d5c49fc>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 23 Oct 2023 15:37:25 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="b5fd20fb0b1e519ea4c7fddbc1c44f0e";
logging-data="3388362"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18YvxeG4mbNTHSKTWf+FMO+"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:9NbwAMOleaxkmAEeJgptPKJLxRg=
Content-Language: en-US
In-Reply-To: <nnd$5b8a6569$42779f55@a3b614384d5c49fc>
 by: Ruvim - Mon, 23 Oct 2023 15:37 UTC

On 2023-10-23 15:04, albert wrote:
> In article <uh5vno$36el4$1@dont-email.me>,
> Ruvim <ruvim.pinka@gmail.com> wrote:
>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>
>> In a nutshell:
>>
>> LATEST-NAME-IN ( wid -- nt|0 )
>> Remove the word list identifier wid from the stack. If this word list is
>> empty, then return 0, otherwise return the name token nt for the
>> definition that was placed most recently into this word list.
>>
>> LATEST-NAME ( -- nt )
>> Return the name token nt for the definition that was placed most
>> recently into the compilation word list, if such definition exists.
>> Otherwise throw exception code -80.
>>
>> Feedback is welcome!
>
> I hate to see NAME here. I advocate dea (dictionary entry address)
> since 1993 , working on the transputer Forth with Marcel Hendrix.
> There were N fields and N^2 transformation and I have had
> enough of it.

"DEA" is an acronym. It's better to use a full English word if appropriate.

"NAME" has a long history. It denoted NFA, and now it denotes a name
token, which is successor of NFA — in all words except "PARSE-NAME", for
example "FIND-NAME", "FIND-NAME-IN", "NAME>COMPILE", etc.

There is no point in replacing "NAME" in all these words.
At the same time, naming for new words must be in consistence with
existing words.

[...]
>
> ***********************************************************
> * Names are SO not determining the identity of a word. *
> ***********************************************************
>
> I'm not against your proposal, only the names are wrong.
>
> >LATEST ( wid -- dea|0 )
> LATEST ( -- dea )

The first name is not consistent with other similar names.

And words with the second name already exist in many Forth systems, and
they behavior varies.

>
>> [1]
>> https://forth-standard.org/proposals/new-words-latest-name-and-latest-name-in?hideDiff#reply-1124
>> Ruvim
>
> Groetjes Albert
>
> P.S. I use LATEST all over the place. I have a hard time to imagine
> a use for >LATEST. Unless ..
>
> Only define >LATEST. LATEST might be controversial so you avoid
> standardising it.
> On the top of the file you then can say
> : LATEST CURRENT @ >LATEST ;

It's will be slightly longer.
In my proposal this word never returns 0, but throws an exception instead.

> And get it over with.
> Same situation as with
> : NOT 0= ;

--
Ruvim

Re: Proposal on LATEST-NAME

<2c7b8578-ac0c-4da6-9ee1-4277565e6989n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:67d0:0:b0:400:9629:cfad with SMTP id r16-20020ac867d0000000b004009629cfadmr196679qtp.13.1698079496320;
Mon, 23 Oct 2023 09:44:56 -0700 (PDT)
X-Received: by 2002:a05:6808:1894:b0:3af:c707:8c9b with SMTP id
bi20-20020a056808189400b003afc7078c9bmr3390671oib.4.1698079496131; Mon, 23
Oct 2023 09:44:56 -0700 (PDT)
Path: i2pn2.org!i2pn.org!nntp.comgw.net!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.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, 23 Oct 2023 09:44:55 -0700 (PDT)
In-Reply-To: <uh63vl$37cua$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:1c05:2f18:6d00:7d2f:7992:774b:4e6e;
posting-account=-JQ2RQoAAAB6B5tcBTSdvOqrD1HpT_Rk
NNTP-Posting-Host: 2001:1c05:2f18:6d00:7d2f:7992:774b:4e6e
References: <uh5vno$36el4$1@dont-email.me> <nnd$5b8a6569$42779f55@a3b614384d5c49fc>
<uh63vl$37cua$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <2c7b8578-ac0c-4da6-9ee1-4277565e6989n@googlegroups.com>
Subject: Re: Proposal on LATEST-NAME
From: mhx@iae.nl (Marcel Hendrix)
Injection-Date: Mon, 23 Oct 2023 16:44:56 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2199
 by: Marcel Hendrix - Mon, 23 Oct 2023 16:44 UTC

On Monday, October 23, 2023 at 5:37:30 PM UTC+2, Ruvim wrote:
[..]
> "NAME" has a long history. It denoted NFA, and now it denotes a name
> token, which is successor of NFA — in all words except
> "PARSE-NAME", for example "FIND-NAME", "FIND-NAME-IN", "NAME>COMPILE", etc.
------------------------

Why in heavens name, call it PARSE-NAME ?

PARSE-NAME CORE EXT
( <spaces>name<space> -- c-addr u )
Skip leading space delimiters. Parse name delimited by a space.
c-addr is the address of the selected string within the input buffer
and u is its length in characters. If the parse area is empty or contains
only white space, the resulting string has length zero.

Apart from the above, it makes no sense and is counter-intuitive?

-marcel

Re: Proposal on LATEST-NAME

<uh6a4u$39811$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
Date: Mon, 23 Oct 2023 17:22:35 +0000
Organization: A noiseless patient Spider
Lines: 48
Message-ID: <uh6a4u$39811$1@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<nnd$5b8a6569$42779f55@a3b614384d5c49fc> <uh63vl$37cua$1@dont-email.me>
<2c7b8578-ac0c-4da6-9ee1-4277565e6989n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 23 Oct 2023 17:22:38 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="b5fd20fb0b1e519ea4c7fddbc1c44f0e";
logging-data="3448865"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/exdig3JoLYgXAgVS1oKGx"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:NzYoWooTfs/gPeqgfbe26q/57LI=
Content-Language: en-US
In-Reply-To: <2c7b8578-ac0c-4da6-9ee1-4277565e6989n@googlegroups.com>
 by: Ruvim - Mon, 23 Oct 2023 17:22 UTC

On 2023-10-23 16:44, Marcel Hendrix wrote:
> On Monday, October 23, 2023 at 5:37:30 PM UTC+2, Ruvim wrote:
> [..]
>> "NAME" has a long history. It denoted NFA, and now it denotes a name
>> token, which is successor of NFA — in all words except
>> "PARSE-NAME", for example "FIND-NAME", "FIND-NAME-IN", "NAME>COMPILE", etc.
> ------------------------
>
> Why in heavens name, call it PARSE-NAME ?

Anton wrote [2]: "PARSE-NAME was originally proposed as PARSE-WORD, but
that name has conflicting behaviour in some widely-used systems, so
PARSE-NAME was chosen."

In my message at [2], I was wrong that PARSE-NAME did not have conflicts
in 2005. "NAME" was used to denote "NFA" long before that.

So it was a bad choice even in 2005. Another example of a bad name
choice is "BUFFER:", which too close to "BUFFER".

For "BUFFER:" I suggest the synonym "REGION" (as in "a memory region").
Without a colon in the name, since all other similar defining words
don't have a colon in their names.

Instead of "PARSE-NAME" — we can have "PARSE-LEXEME"

>
> PARSE-NAME CORE EXT
> ( <spaces>name<space> -- c-addr u )
> Skip leading space delimiters. Parse name delimited by a space.
> c-addr is the address of the selected string within the input buffer
> and u is its length in characters. If the parse area is empty or contains
> only white space, the resulting string has length zero.
>
> Apart from the above, it makes no sense and is counter-intuitive?
>
> -marcel

[2] https://forth-standard.org/standard/core/PARSE-NAME#contribution-92

--
Ruvim

Re: Proposal on LATEST-NAME

<2023Oct23.190806@mips.complang.tuwien.ac.at>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.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: Proposal on LATEST-NAME
Date: Mon, 23 Oct 2023 17:08:06 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 58
Message-ID: <2023Oct23.190806@mips.complang.tuwien.ac.at>
References: <uh5vno$36el4$1@dont-email.me> <nnd$5b8a6569$42779f55@a3b614384d5c49fc> <uh63vl$37cua$1@dont-email.me> <2c7b8578-ac0c-4da6-9ee1-4277565e6989n@googlegroups.com>
Injection-Info: dont-email.me; posting-host="0d4faa926ecbafabfd0cf4da7de11b25";
logging-data="3455766"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/unhrVIqbBcA9KnII7Qy41"
Cancel-Lock: sha1:7s76E11wSs0imd4LxqZTIanx4vc=
X-newsreader: xrn 10.11
 by: Anton Ertl - Mon, 23 Oct 2023 17:08 UTC

Marcel Hendrix <mhx@iae.nl> writes:
>Why in heavens name, call it PARSE-NAME ?

Water down the river. But if you are interested, you can read about
it at <http://www.forth200x.org/parse-name.html>. And there it says:

|Several systems have implemented a PARSE-WORD compatible with this
|specification, e.g., Gforth and Quartus.
| |However, several systems have implemented words called PARSE-WORD that
|are incompatible with this specification (e.g., MPE's Forths,
|MinForth, CHForth, F83, Jforth, 4th; Mops is also incompatible, but in
|a less problematic way), and Stephen Pelc indicated that MPE's Forth
|would never implement this word with the name PARSE-WORD.
| |Therefore, a new name is needed for this functionality, and a
|strawpoll indicated the most support for PARSE-NAME.

And looking for the strawpoll, I find in
<2005Apr22.104613@mips.complang.tuwien.ac.at>:

|Well, in the meantime more people have expressed their opinion:
| |NextWord (conflict: exists with different meaning in Win32Forth)
|TOKEN
| Supported by: Alex McDonald
| Could live with it: Bernd Paysan
| Strongly opposed: Michael L Gassanenko
|NAME (existing practice: exists with this meaning in Gforth)
| Supported by: Coos Haak
| Supported by: Albert van der Horst
| Could live with it: Bernd Paysan
| (Michael Gassenenko points out that it does not fit with >NAME NAME>)
|EXTRACTWORD
|EXTRACT-WORD
| Supported by: Ward McFarland
|GET-WORD
|GET-NAME
|GET-TOKEN
|PARSE-NAME
| Supported by: Stephen Pelc
| Second choice: Albert van der Horst
| Could live with it: Ward McFarland
| Could also support: Alex McDonald
| Could live with it: Marcel Hendrix
| Can live with it: David N. Williams
| Supported by: Anton Ertl
|PARSE-STREAM
| |So I have decided to go forward with PARSE-NAME and I will send an RfD
|for it soon.

- 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: Proposal on LATEST-NAME

<a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:540b:0:b0:41c:b944:e9a8 with SMTP id b11-20020ac8540b000000b0041cb944e9a8mr170008qtq.0.1698091431946;
Mon, 23 Oct 2023 13:03:51 -0700 (PDT)
X-Received: by 2002:a05:6870:b69e:b0:1e9:9eb6:e11e with SMTP id
cy30-20020a056870b69e00b001e99eb6e11emr5197156oab.3.1698091431729; Mon, 23
Oct 2023 13:03:51 -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: Mon, 23 Oct 2023 13:03:49 -0700 (PDT)
In-Reply-To: <uh5vno$36el4$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2003:f7:1f49:844f:1571:b749:ae0c:37d4;
posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 2003:f7:1f49:844f:1571:b749:ae0c:37d4
References: <uh5vno$36el4$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
Subject: Re: Proposal on LATEST-NAME
From: minforth@arcor.de (minforth)
Injection-Date: Mon, 23 Oct 2023 20:03:51 +0000
Content-Type: text/plain; charset="UTF-8"
 by: minforth - Mon, 23 Oct 2023 20:03 UTC

Ruvim schrieb am Montag, 23. Oktober 2023 um 16:25:00 UTC+2:
> I prepared a proposal: New words: latest-name and latest-name-in [1]
>
> In a nutshell:
>
> LATEST-NAME-IN ( wid -- nt|0 )
> Remove the word list identifier wid from the stack. If this word list is
> empty, then return 0, otherwise return the name token nt for the
> definition that was placed most recently into this word list.
>
> LATEST-NAME ( -- nt )
> Return the name token nt for the definition that was placed most
> recently into the compilation word list, if such definition exists.
> Otherwise throw exception code -80.
>
> Feedback is welcome!

I fail to see a use case.

IMO the inner mechanisms of compilers shouldn't be cemented
by so-called standards.

Re: Proposal on LATEST-NAME

<uh6m7s$3cc1o$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
Date: Mon, 23 Oct 2023 20:48:58 +0000
Organization: A noiseless patient Spider
Lines: 78
Message-ID: <uh6m7s$3cc1o$1@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 23 Oct 2023 20:49:00 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="b5fd20fb0b1e519ea4c7fddbc1c44f0e";
logging-data="3551288"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18BKeK7LfbCBx/Rxr26Hn+k"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:gehbp0oXlHXy2q96ow65JLKlUEU=
Content-Language: en-US
In-Reply-To: <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
 by: Ruvim - Mon, 23 Oct 2023 20:48 UTC

On 2023-10-23 20:03, minforth wrote:
> Ruvim schrieb am Montag, 23. Oktober 2023 um 16:25:00 UTC+2:
>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>
>> In a nutshell:
>>
>> LATEST-NAME-IN ( wid -- nt|0 )
>> Remove the word list identifier wid from the stack. If this word list is
>> empty, then return 0, otherwise return the name token nt for the
>> definition that was placed most recently into this word list.
>>
>> LATEST-NAME ( -- nt )
>> Return the name token nt for the definition that was placed most
>> recently into the compilation word list, if such definition exists.
>> Otherwise throw exception code -80.
>>
>> Feedback is welcome!
>
> I fail to see a use case.

In the section "Typical use" (by the link), two use case examples are shown.

Vocabulary for structure definition:

: struct: ( "name" -- wid.current.old u.offset )
vocabulary
get-current
also latest-name name> execute
definitions
0
;

Init a deferred definition:

\ in the application's vocabulary
: it ( -- xt ) latest-name name>interpret ;

defer foo

: bar ... ; it is foo

A decorator example:

: [!] ( "name" -- )
latest-name dup >r
name>string ['] : execute-parsing
r> name> ' execute
postpone ;
;

: make-pretty ( xt -- )
[: ." (I got decorated)" ;] compile, compile,
;

: foo ." (I'm ordinary)" ;
[!] make-pretty

foo \ "(I got decorated)(I'm ordinary)"

> IMO the inner mechanisms of compilers shouldn't be cemented
> by so-called standards.

The proposed API cements exactly zero inner mechanisms of compilers.

The only additional burden is to store the latest word in the word list
structure. But anyway, almost all Forth systems do it. If not — the
system is free to not provide this API.

--
Ruvim

Re: Proposal on LATEST-NAME

<65373f2a$1@news.ausics.net>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Date: Tue, 24 Oct 2023 14:51:05 +1100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Proposal on LATEST-NAME
Newsgroups: comp.lang.forth
References: <uh5vno$36el4$1@dont-email.me>
Content-Language: en-GB
From: dxforth@gmail.com (dxf)
In-Reply-To: <uh5vno$36el4$1@dont-email.me>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
NNTP-Posting-Host: news.ausics.net
Message-ID: <65373f2a$1@news.ausics.net>
Organization: Ausics - https://ausics.net
Lines: 15
X-Complaints: abuse@ausics.net
Path: i2pn2.org!i2pn.org!news.bbs.nz!news.ausics.net!not-for-mail
 by: dxf - Tue, 24 Oct 2023 03:51 UTC

On 24/10/2023 1:24 am, Ruvim wrote:
> I prepared a proposal: New words: latest-name and latest-name-in [1]
>
> In a nutshell:
>
> LATEST-NAME-IN ( wid -- nt|0 )
> Remove the word list identifier wid from the stack. If this word list is empty, then return 0, otherwise return the name token nt for the definition that was placed most recently into this word list.
>
> LATEST-NAME ( -- nt )
> Return the name token nt for the definition that was placed most recently into the compilation word list, if such definition exists. Otherwise throw exception code -80.
>
> Feedback is welcome!

Why the exception on LATEST-NAME - how many forths do that?

Re: Proposal on LATEST-NAME

<cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:47d0:0:b0:41c:b702:a297 with SMTP id d16-20020ac847d0000000b0041cb702a297mr196750qtr.2.1698130164993;
Mon, 23 Oct 2023 23:49:24 -0700 (PDT)
X-Received: by 2002:a05:6870:f622:b0:1ea:1bc1:4084 with SMTP id
ek34-20020a056870f62200b001ea1bc14084mr5223328oab.4.1698130164785; Mon, 23
Oct 2023 23:49:24 -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, 23 Oct 2023 23:49:24 -0700 (PDT)
In-Reply-To: <uh6m7s$3cc1o$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=79.224.108.17; posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 79.224.108.17
References: <uh5vno$36el4$1@dont-email.me> <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
<uh6m7s$3cc1o$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>
Subject: Re: Proposal on LATEST-NAME
From: minforth@arcor.de (minforth)
Injection-Date: Tue, 24 Oct 2023 06:49:24 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2814
 by: minforth - Tue, 24 Oct 2023 06:49 UTC

Ruvim schrieb am Montag, 23. Oktober 2023 um 22:49:04 UTC+2:
> On 2023-10-23 20:03, minforth wrote:
> > Ruvim schrieb am Montag, 23. Oktober 2023 um 16:25:00 UTC+2:
> >> I prepared a proposal: New words: latest-name and latest-name-in [1]
> >>
> >> In a nutshell:
> >>
> >> LATEST-NAME-IN ( wid -- nt|0 )
> >> Remove the word list identifier wid from the stack. If this word list is
> >> empty, then return 0, otherwise return the name token nt for the
> >> definition that was placed most recently into this word list.
> >>
> >> LATEST-NAME ( -- nt )
> >> Return the name token nt for the definition that was placed most
> >> recently into the compilation word list, if such definition exists.
> >> Otherwise throw exception code -80.
> >>
> >> Feedback is welcome!
> >
> > I fail to see a use case.
> In the section "Typical use" (by the link), two use case examples are shown.

Those are examples for compiler extensions.

> > IMO the inner mechanisms of compilers shouldn't be cemented
> > by so-called standards.
> The proposed API cements exactly zero inner mechanisms of compilers.

I don't think so. Many Forths have LAST which isn't standardized either.
> The only additional burden is to store the latest word in the word list
> structure. But anyway, almost all Forth systems do it. If not — the
> system is free to not provide this API.

Perhaps a new wordset COMPILER-EXTENSION would be better.
Also as a good place for recognizers, whenever that proposal makes it.

Re: Proposal on LATEST-NAME

<65377590$1@news.ausics.net>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Date: Tue, 24 Oct 2023 18:43:12 +1100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: dxforth@gmail.com (dxf)
Subject: Re: Proposal on LATEST-NAME
Newsgroups: comp.lang.forth
References: <uh5vno$36el4$1@dont-email.me> <65373f2a$1@news.ausics.net>
Content-Language: en-GB
In-Reply-To: <65373f2a$1@news.ausics.net>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
NNTP-Posting-Host: news.ausics.net
Message-ID: <65377590$1@news.ausics.net>
Organization: Ausics - https://ausics.net
Lines: 19
X-Complaints: abuse@ausics.net
Path: i2pn2.org!i2pn.org!news.bbs.nz!news.ausics.net!not-for-mail
 by: dxf - Tue, 24 Oct 2023 07:43 UTC

On 24/10/2023 2:51 pm, dxf wrote:
> On 24/10/2023 1:24 am, Ruvim wrote:
>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>
>> In a nutshell:
>>
>> LATEST-NAME-IN ( wid -- nt|0 )
>> Remove the word list identifier wid from the stack. If this word list is empty, then return 0, otherwise return the name token nt for the definition that was placed most recently into this word list.
>>
>> LATEST-NAME ( -- nt )
>> Return the name token nt for the definition that was placed most recently into the compilation word list, if such definition exists. Otherwise throw exception code -80.
>>
>> Feedback is welcome!
>
> Why the exception on LATEST-NAME - how many forths do that?

Never mind - I've since seen the reference implementation on forth-standard.org.

Re: Proposal on LATEST-NAME

<nnd$797a9cad$10c72048@a44641c8780f7883>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
References: <uh5vno$36el4$1@dont-email.me> <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$797a9cad$10c72048@a44641c8780f7883>
Organization: KPN B.V.
Date: Tue, 24 Oct 2023 09:48:32 +0200
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!feeder1.feed.usenet.farm!feed.usenet.farm!feeder.usenetexpress.com!tr3.eu1.usenetexpress.com!94.232.112.244.MISMATCH!feed.abavia.com!abe004.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 33
Injection-Date: Tue, 24 Oct 2023 09:48:32 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: none - Tue, 24 Oct 2023 07:48 UTC

In article <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>,
minforth <minforth@arcor.de> wrote:
>Ruvim schrieb am Montag, 23. Oktober 2023 um 16:25:00 UTC+2:
>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>
>> In a nutshell:
>>
>> LATEST-NAME-IN ( wid -- nt|0 )
>> Remove the word list identifier wid from the stack. If this word list is
>> empty, then return 0, otherwise return the name token nt for the
>> definition that was placed most recently into this word list.
>>
>> LATEST-NAME ( -- nt )
>> Return the name token nt for the definition that was placed most
>> recently into the compilation word list, if such definition exists.
>> Otherwise throw exception code -80.
>>
>> Feedback is welcome!
>
>I fail to see a use case.
>
>IMO the inner mechanisms of compilers shouldn't be cemented
>by so-called standards.

Hear! Hear!

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: Proposal on LATEST-NAME

<nnd$30062717$643b5347@6d8f35107c88f606>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
References: <uh5vno$36el4$1@dont-email.me> <nnd$5b8a6569$42779f55@a3b614384d5c49fc> <uh63vl$37cua$1@dont-email.me>
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$30062717$643b5347@6d8f35107c88f606>
Organization: KPN B.V.
Date: Tue, 24 Oct 2023 10:37:29 +0200
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!feeder1.feed.usenet.farm!feed.usenet.farm!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: 125
Injection-Date: Tue, 24 Oct 2023 10:37:29 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
X-Received-Bytes: 5152
 by: none - Tue, 24 Oct 2023 08:37 UTC

In article <uh63vl$37cua$1@dont-email.me>,
Ruvim <ruvim.pinka@gmail.com> wrote:
>On 2023-10-23 15:04, albert wrote:
>> In article <uh5vno$36el4$1@dont-email.me>,
>> Ruvim <ruvim.pinka@gmail.com> wrote:
>>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>>
>>> In a nutshell:
>>>
>>> LATEST-NAME-IN ( wid -- nt|0 )
>>> Remove the word list identifier wid from the stack. If this word list is
>>> empty, then return 0, otherwise return the name token nt for the
>>> definition that was placed most recently into this word list.
>>>
>>> LATEST-NAME ( -- nt )
>>> Return the name token nt for the definition that was placed most
>>> recently into the compilation word list, if such definition exists.
>>> Otherwise throw exception code -80.
>>>
>>> Feedback is welcome!
>>
>> I hate to see NAME here. I advocate dea (dictionary entry address)
>> since 1993 , working on the transputer Forth with Marcel Hendrix.
>> There were N fields and N^2 transformation and I have had
>> enough of it.
>
>"DEA" is an acronym. It's better to use a full English word if appropriate.

This a slight disadvantage. However it conflicts with nothing.
There are Forth names that are abbreviations:
R/O R/W SCR TIB SM/REM UM/MOD
In the 30 years I have used DEA nobody has come up that catches the
concept properly, and certainly anybody who has come up with a name that
catches the concept improperly have found that is subject to confusion and
infighting. On the other hand *nobody* has used "dea" in a conflicting
way.

"
The DEA of a word identifies the word internally. It should be
possible for the system to find all the properies of word
knowing its DEA. In particular the executable code and its
name (if it has a name)
" ^^^^^^^^^^^^^^^^

It bears repeating:

***********************************************************
* Names are SO not determining the identity of a word. *
***********************************************************

>
>"NAME" has a long history. It denoted NFA, and now it denotes a name
>token, which is successor of NFA — in all words except "PARSE-NAME", for
>example "FIND-NAME", "FIND-NAME-IN", "NAME>COMPILE", etc.
>
>There is no point in replacing "NAME" in all these words.
>At the same time, naming for new words must be in consistence with
>existing words.
That is a non sequitur. In particular FIND-NAME is an example why
the string NAME is a separate concept of the dea.
Compare :
FOUND ( sc -- dea )
Look up the sc (addr len) in the current search order.
Return *the* address dea, the address that rules them all.

>
>
>[...]
>>
>> ***********************************************************
>> * Names are SO not determining the identity of a word. *
>> ***********************************************************
>>
>> I'm not against your proposal, only the names are wrong.
>>
>> >LATEST ( wid -- dea|0 )
>> LATEST ( -- dea )
>
>The first name is not consistent with other similar names.
>
>And words with the second name already exist in many Forth systems, and
>they behavior varies.

Seriously? What with S>D >R U> EKEY>CHAR
You are trying to win a debate here at any price. That doesnot get you
points in a standard commission that must compromise.
It is not a fraternety debate club.

>>> [1]
>>> https://forth-standard.org/proposals/new-words-latest-name-and-latest-name-in?hideDiff#reply-1124
>>> Ruvim
>>
>> Groetjes Albert
>>
>> P.S. I use LATEST all over the place. I have a hard time to imagine
>> a use for >LATEST. Unless ..
>>
>> Only define >LATEST. LATEST might be controversial so you avoid
>> standardising it.
>> On the top of the file you then can say
>> : LATEST CURRENT @ >LATEST ;
>
>It's will be slightly longer.
>In my proposal this word never returns 0, but throws an exception instead.
>
>> And get it over with.
>> Same situation as with
>> : NOT 0= ;

I can't getting the point accross.
The problem with LATEST that the obvious solution doesn't work.
The naive solution reading iso93 is returning an xt.
So what thingy is LATEST to return?

>--
>Ruvim
>

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 -

decorators (was Re: Proposal on LATEST-NAME )

<nnd$75b0e92f$2a592a4f@4d48b23395ddd2ef>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <uh5vno$36el4$1@dont-email.me> <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com> <uh6m7s$3cc1o$1@dont-email.me>
Subject: decorators (was Re: Proposal on LATEST-NAME )
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$75b0e92f$2a592a4f@4d48b23395ddd2ef>
Organization: KPN B.V.
Date: Tue, 24 Oct 2023 11:16:32 +0200
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer02.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: 65
Injection-Date: Tue, 24 Oct 2023 11:16:32 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
X-Received-Bytes: 2456
 by: none - Tue, 24 Oct 2023 09:16 UTC

In article <uh6m7s$3cc1o$1@dont-email.me>,
Ruvim <ruvim.pinka@gmail.com> wrote:
<SNIP>
>A decorator example:
>
> : [!] ( "name" -- )
> latest-name dup >r
> name>string ['] : execute-parsing
> r> name> ' execute
> postpone ;
> ;
>
>
> : make-pretty ( xt -- )
> [: ." (I got decorated)" ;] compile, compile,
> ;
>
> : foo ." (I'm ordinary)" ;
> [!] make-pretty
>
> foo \ "(I got decorated)(I'm ordinary)"
>

In ciforth (leaving out the OK's)

WANT decorated {
: foo "(I'm ordinary)" TYPE ;
{ "(I got decorated)" TYPE } 'foo decorated
foo
(I got decorated)(I'm ordinary)
'foo undecorated
foo
(I'm ordinary)

The use case of `decorated is to add temporary debug
information to a complicated system, especially if
Heisenbugs prevent you to insert debugging code.

An example of a recent use in a Make Another Lisp project.
{ DUP EMIT CO DUP DUP SIZE TYPE &| EMIT } '$C+a decorated
$C+a appends a character to an ALLOCATEd string
What is after CO (Chuck Moores name is ;: ) is code
that is executed after the word decorated executes.
An example of output would be
AanothernameA|
confirming that the character is properly appended to the
ALLOCATE string, that was formerly apparently "anothername".

You can use the clunky :NONAME for { and ; for }
but the following won't fly.

: doit { "(I got decorated)" TYPE } 'foo decorated ;
doit
>
>--
>Ruvim
>

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: Proposal on LATEST-NAME

<uh88or$3rfe1$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
Date: Tue, 24 Oct 2023 11:11:22 +0000
Organization: A noiseless patient Spider
Lines: 36
Message-ID: <uh88or$3rfe1$1@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me> <65373f2a$1@news.ausics.net>
<65377590$1@news.ausics.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 24 Oct 2023 11:11:23 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="2ed4a8d9ff26f1b3c29e2070ff880a5f";
logging-data="4046273"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+pi9veaDbNamTthtdTOl1r"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:U85rYNsZv0IvaGXCXeohIvPrQO4=
In-Reply-To: <65377590$1@news.ausics.net>
Content-Language: en-US
 by: Ruvim - Tue, 24 Oct 2023 11:11 UTC

On 2023-10-24 07:43, dxf wrote:
> On 24/10/2023 2:51 pm, dxf wrote:
>> On 24/10/2023 1:24 am, Ruvim wrote:
>>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>>
>>> In a nutshell:
>>>
>>> LATEST-NAME-IN ( wid -- nt|0 )
>>> Remove the word list identifier wid from the stack. If this word list is empty, then return 0, otherwise return the name token nt for the definition that was placed most recently into this word list.
>>>
>>> LATEST-NAME ( -- nt )
>>> Return the name token nt for the definition that was placed most recently into the compilation word list, if such definition exists. Otherwise throw exception code -80.
>>>
>>> Feedback is welcome!
>>
>> Why the exception on LATEST-NAME - how many forths do that?
>
> Never mind - I've since seen the reference implementation on forth-standard.org.
>
>

Let me explain for other readers.

It does not matter how many Forth systems do that, since it's a new
word, and it is intended for users, not for the internal needs of the
system (of course the system may use it, but is not required to do so).

What matters is how many users/programs check the returned value on
zero, and why they do it. As I see, programs almost never check the
returned value from such words. It means, this word shall throw an
exception instead of return 0.

--
Ruvim

Re: decorators (was Re: Proposal on LATEST-NAME )

<uh89cq$3rfe1$2@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Re: decorators (was Re: Proposal on LATEST-NAME )
Date: Tue, 24 Oct 2023 11:22:02 +0000
Organization: A noiseless patient Spider
Lines: 72
Message-ID: <uh89cq$3rfe1$2@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
<uh6m7s$3cc1o$1@dont-email.me> <nnd$75b0e92f$2a592a4f@4d48b23395ddd2ef>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 24 Oct 2023 11:22:02 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="2ed4a8d9ff26f1b3c29e2070ff880a5f";
logging-data="4046273"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+nGoaMe4qVWpyQ/OeqEwdG"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:eqE0zwC0EdcQlnB4kKEgQ7Z86gM=
In-Reply-To: <nnd$75b0e92f$2a592a4f@4d48b23395ddd2ef>
Content-Language: en-US
 by: Ruvim - Tue, 24 Oct 2023 11:22 UTC

On 2023-10-24 09:16, albert wrote:
> In article <uh6m7s$3cc1o$1@dont-email.me>,
> Ruvim <ruvim.pinka@gmail.com> wrote:
> <SNIP>
>> A decorator example:
>>
>> : [!] ( "name" -- )
>> latest-name dup >r
>> name>string ['] : execute-parsing
>> r> name> ' execute
>> postpone ;
>> ;
>>
>>
>> : make-pretty ( xt -- )
>> [: ." (I got decorated)" ;] compile, compile,
>> ;
>>
>> : foo ." (I'm ordinary)" ;
>> [!] make-pretty
>>
>> foo \ "(I got decorated)(I'm ordinary)"
>>
>
> In ciforth (leaving out the OK's)
>
> WANT decorated {
> : foo "(I'm ordinary)" TYPE ;
> { "(I got decorated)" TYPE } 'foo decorated

The idea of a special syntax for decoration is that you don't need to
repeat the name of the word that is decorated.

Otherwise it's just a wrapper, which can be always implemented directly.

> foo
> (I got decorated)(I'm ordinary)
> 'foo undecorated
> foo
> (I'm ordinary)
>
> The use case of `decorated is to add temporary debug
> information to a complicated system, especially if
> Heisenbugs prevent you to insert debugging code.
>
> An example of a recent use in a Make Another Lisp project.
> { DUP EMIT CO DUP DUP SIZE TYPE &| EMIT } '$C+a decorated
> $C+a appends a character to an ALLOCATEd string
> What is after CO (Chuck Moores name is ;: ) is code
> that is executed after the word decorated executes.
> An example of output would be
> AanothernameA|
> confirming that the character is properly appended to the
> ALLOCATE string, that was formerly apparently "anothername".
>
> You can use the clunky :NONAME for { and ; for }
> but the following won't fly.
>
> : doit { "(I got decorated)" TYPE } 'foo decorated ;
> doit

It can work with quotations.

But your implementation is too system specific — it requires a
capability to change behavior of any word.

--
Ruvim

Re: Proposal on LATEST-NAME

<uh8a78$3rfe1$3@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
Date: Tue, 24 Oct 2023 11:36:08 +0000
Organization: A noiseless patient Spider
Lines: 61
Message-ID: <uh8a78$3rfe1$3@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
<uh6m7s$3cc1o$1@dont-email.me>
<cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 24 Oct 2023 11:36:08 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="2ed4a8d9ff26f1b3c29e2070ff880a5f";
logging-data="4046273"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+mdsXYO/QCb6RlWO2ibG7J"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:e0lf75cQzAeCPlr89jkO8KQtJDc=
Content-Language: en-US
In-Reply-To: <cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>
 by: Ruvim - Tue, 24 Oct 2023 11:36 UTC

On 2023-10-24 06:49, minforth wrote:
> Ruvim schrieb am Montag, 23. Oktober 2023 um 22:49:04 UTC+2:
>> On 2023-10-23 20:03, minforth wrote:
>>> Ruvim schrieb am Montag, 23. Oktober 2023 um 16:25:00 UTC+2:
>>>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>>>
>>>> In a nutshell:
>>>>
>>>> LATEST-NAME-IN ( wid -- nt|0 )
>>>> Remove the word list identifier wid from the stack. If this word list is
>>>> empty, then return 0, otherwise return the name token nt for the
>>>> definition that was placed most recently into this word list.
>>>>
>>>> LATEST-NAME ( -- nt )
>>>> Return the name token nt for the definition that was placed most
>>>> recently into the compilation word list, if such definition exists.
>>>> Otherwise throw exception code -80.
>>>>
>>>> Feedback is welcome!
>>>
>>> I fail to see a use case.
>> In the section "Typical use" (by the link), two use case examples are shown.
>
> Those are examples for compiler extensions.
>

>>> IMO the inner mechanisms of compilers shouldn't be cemented
>>> by so-called standards.
>> The proposed API cements exactly zero inner mechanisms of compilers.
>
> I don't think so. Many Forths have LAST which isn't standardized either.

They continue to use their LAST or whatever they used before.

The proposed words are intended for *programs*. The system is not
required to use these words at all.

Even if the system provides these words, this does not in any way limit
the internal mechanisms of its compiler.

>> The only additional burden is to store the latest word in the word list
>> structure. But anyway, almost all Forth systems do it. If not — the
>> system is free to not provide this API.
>
> Perhaps a new wordset COMPILER-EXTENSION would be better.
> Also as a good place for recognizers, whenever that proposal makes it.

It's true for recognizers, since a program can affect the behavior of
the Forth text interpreter via Recognizer API (and even use it for its
own purposes).

But the words LATEST-NAME-IN and LATEST-NAME simply provide some
information from word lists, like the words FIND-NAME-IN or
TRAVERSE-WORDLIST do.

--
Ruvim

Re: decorators (was Re: Proposal on LATEST-NAME )

<nnd$16135ec2$64d38b67@1dc3befaaffe839c>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <uh5vno$36el4$1@dont-email.me> <uh6m7s$3cc1o$1@dont-email.me> <nnd$75b0e92f$2a592a4f@4d48b23395ddd2ef> <uh89cq$3rfe1$2@dont-email.me>
Subject: Re: decorators (was Re: Proposal on LATEST-NAME )
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$16135ec2$64d38b67@1dc3befaaffe839c>
Organization: KPN B.V.
Date: Tue, 24 Oct 2023 15:30:17 +0200
Path: i2pn2.org!rocksolid2!news.neodome.net!tncsrv06.tnetconsulting.net!newsfeed.endofthelinebbs.com!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!feed.abavia.com!abe005.abavia.com!abp003.abavia.com!news.kpn.nl!not-for-mail
Lines: 33
Injection-Date: Tue, 24 Oct 2023 15:30:17 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: none - Tue, 24 Oct 2023 13:30 UTC

In article <uh89cq$3rfe1$2@dont-email.me>,
Ruvim <ruvim.pinka@gmail.com> wrote:
<SNIP>
>> The use case of `decorated is to add temporary debug
>> information to a complicated system, especially if
>> Heisenbugs prevent you to insert debugging code.

>The idea of a special syntax for decoration is that you don't need to
>repeat the name of the word that is decorated.
>
>Otherwise it's just a wrapper, which can be always implemented directly.

So I have this answered beforehand. It doesn't help with a Heisenbug.

>
>But your implementation is too system specific — it requires a
>capability to change behavior of any word.

What can I say.
The python people can do it. ciforth can do it. gdb can do it.
It is no excuse if a system is not powerful enough.
>
>--
>Ruvim
>

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: Proposal on LATEST-NAME

<uh954j$4q87$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
Date: Tue, 24 Oct 2023 19:15:30 +0000
Organization: A noiseless patient Spider
Lines: 175
Message-ID: <uh954j$4q87$1@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<nnd$5b8a6569$42779f55@a3b614384d5c49fc> <uh63vl$37cua$1@dont-email.me>
<nnd$30062717$643b5347@6d8f35107c88f606>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 24 Oct 2023 19:15:31 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="2ed4a8d9ff26f1b3c29e2070ff880a5f";
logging-data="157959"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19IGFYgsLhAuRtcgAEsZThf"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:gRkEkgsjWkZsKrs3yj2qH/YFN+o=
In-Reply-To: <nnd$30062717$643b5347@6d8f35107c88f606>
Content-Language: en-US
 by: Ruvim - Tue, 24 Oct 2023 19:15 UTC

On 2023-10-24 08:37, albert wrote:
> In article <uh63vl$37cua$1@dont-email.me>,
> Ruvim <ruvim.pinka@gmail.com> wrote:
>> On 2023-10-23 15:04, albert wrote:
>>> In article <uh5vno$36el4$1@dont-email.me>,
>>> Ruvim <ruvim.pinka@gmail.com> wrote:
>>>> I prepared a proposal: New words: latest-name and latest-name-in [1]
>>>>
>>>> In a nutshell:
>>>>
>>>> LATEST-NAME-IN ( wid -- nt|0 )
>>>> Remove the word list identifier wid from the stack. If this word list is
>>>> empty, then return 0, otherwise return the name token nt for the
>>>> definition that was placed most recently into this word list.
>>>>
>>>> LATEST-NAME ( -- nt )
>>>> Return the name token nt for the definition that was placed most
>>>> recently into the compilation word list, if such definition exists.
>>>> Otherwise throw exception code -80.
>>>>
>>>> Feedback is welcome!
>>>
>>> I hate to see NAME here. I advocate dea (dictionary entry address)
>>> since 1993 , working on the transputer Forth with Marcel Hendrix.
>>> There were N fields and N^2 transformation and I have had
>>> enough of it.
>>
>> "DEA" is an acronym. It's better to use a full English word if appropriate.
>
> This a slight disadvantage. However it conflicts with nothing.

I'm not against the term "DEA". It could be acceptable.

But at the moment, the term "name token" is already established, as well
as its designation "name" in the names of words.

What is wrong with that? Why is it worth changing to "dea"?

> There are Forth names that are abbreviations:
> R/O R/W SCR TIB SM/REM UM/MOD
> In the 30 years I have used DEA nobody has come up that catches the
> concept properly, and certainly anybody who has come up with a name that
> catches the concept improperly have found that is subject to confusion and
> infighting. On the other hand *nobody* has used "dea" in a conflicting
> way.
>
> "
> The DEA of a word identifies the word internally. It should be
> possible for the system to find all the properies of word
> knowing its DEA. In particular the executable code and its
> name (if it has a name)
> " ^^^^^^^^^^^^^^^^
>
> It bears repeating:
>
> ***********************************************************
> * Names are SO not determining the identity of a word. *
> ***********************************************************

I agree. A word name does not identify the word.
A name token identifies the word, by its definition:

A name token is a single-cell value that identifies a named Forth
definition.

In this context the term "token" does not mean a character sequence.
In a general sense, it is "something serving as an expression of
something else" -- https://en.wiktionary.org/wiki/token#Noun

>>
>> "NAME" has a long history. It denoted NFA, and now it denotes a name
>> token, which is successor of NFA — in all words except "PARSE-NAME", for
>> example "FIND-NAME", "FIND-NAME-IN", "NAME>COMPILE", etc.
>>
>> There is no point in replacing "NAME" in all these words.
>> At the same time, naming for new words must be in consistence with
>> existing words.
> That is a non sequitur. In particular FIND-NAME is an example why
> the string NAME is a separate concept of the dea.

In "FIND-NAME" , "NAME" denotes a name token rather than a character
string. And it's a thing that is found.

If I understand right, in English, "to find x" means that "x" is the
thing that is found on success. In this case the found thing is a name
token, that is denoted as "NAME".

> Compare :
> FOUND ( sc -- dea )
> Look up the sc (addr len) in the current search order.
> Return *the* address dea, the address that rules them all.

The notion of memory address is too system specific for this purpose.

For example, in some plausible Forth system it can be an index in the
array of headers.

>>
>> [...]
>>>
>>> ***********************************************************
>>> * Names are SO not determining the identity of a word. *
>>> ***********************************************************
>>>
>>> I'm not against your proposal, only the names are wrong.
>>>
>>> >LATEST ( wid -- dea|0 )
>>> LATEST ( -- dea )
>>
>> The first name is not consistent with other similar names.
>>
>> And words with the second name already exist in many Forth systems, and
>> they behavior varies.
>
> Seriously? What with S>D >R U> EKEY>CHAR

Well, the right example is ">BODY" ( xt -- a-addr )

But I would prefer to avoid new standard words with names starting with
">", if this word is not for a stack related word.

> You are trying to win a debate here at any price. That doesnot get you
> points in a standard commission that must compromise.
> It is not a fraternety debate club.

It looks like you want to give me a piece of advice. A public place is
not suitable for this ;)

I just wonder, what a compromise do you have in mind in this particular
case? I mean, a compromise between which positions?

>>>> [1]
>>>> https://forth-standard.org/proposals/new-words-latest-name-and-latest-name-in?hideDiff#reply-1124
>>>> Ruvim
>>>
>>> Groetjes Albert
>>>
>>> P.S. I use LATEST all over the place. I have a hard time to imagine
>>> a use for >LATEST. Unless ..
>>>
>>> Only define >LATEST. LATEST might be controversial so you avoid
>>> standardising it.
>>> On the top of the file you then can say
>>> : LATEST CURRENT @ >LATEST ;
>>
>> It's will be slightly longer.
>> In my proposal this word never returns 0, but throws an exception instead.
>>
>>> And get it over with.
>>> Same situation as with
>>> : NOT 0= ;
>
> I can't getting the point accross.
> The problem with LATEST that the obvious solution doesn't work.
> The naive solution reading iso93 is returning an xt.
> So what thingy is LATEST to return?

Sorry, I'm not following you here. I don't see how your question about
LATEST is related to my proposal.

--
Ruvim

Re: Proposal on LATEST-NAME

<nnd$6c4c8068$70e3e2c1@f441ed190485f784>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
References: <uh5vno$36el4$1@dont-email.me> <uh63vl$37cua$1@dont-email.me> <nnd$30062717$643b5347@6d8f35107c88f606> <uh954j$4q87$1@dont-email.me>
Subject: Re: Proposal on LATEST-NAME
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$6c4c8068$70e3e2c1@f441ed190485f784>
Organization: KPN B.V.
Date: Tue, 24 Oct 2023 21:40:26 +0200
Path: i2pn2.org!i2pn.org!news.1d4.us!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!feed.abavia.com!abe006.abavia.com!abp003.abavia.com!news.kpn.nl!not-for-mail
Lines: 45
Injection-Date: Tue, 24 Oct 2023 21:40:26 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
 by: none - Tue, 24 Oct 2023 19:40 UTC

In article <uh954j$4q87$1@dont-email.me>, Ruvim <ruvim.pinka@gmail.com> wrote:
>On 2023-10-24 08:37, albert wrote:
>> It bears repeating:
>>
>> ***********************************************************
>> * Names are SO not determining the identity of a word. *
>> ***********************************************************
>
>I agree. A word name does not identify the word.
>A name token identifies the word, by its definition:
>
> A name token is a single-cell value that identifies a named Forth
>definition.

Almost correct.

A name token is a single-cell value that identifies a Forth
definition. Note that it may not have a name.

>> I can't getting the point accross.
>> The problem with LATEST that the obvious solution doesn't work.
>> The naive solution reading iso93 is returning an xt.
>> So what thingy is LATEST to return?
>
>Sorry, I'm not following you here. I don't see how your question about
>LATEST is related to my proposal.

The answer is not what it is that is returned. The answer is how it
should be named:
Possibly answers:
A name token
B dea

In any case it must be an answer that identifies a
word/definition/you-know-what-I-mean.

>Ruvim

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: Proposal on LATEST-NAME

<747cb121-97c5-4315-9d86-862735408859n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:7144:0:b0:412:14a0:448e with SMTP id h4-20020ac87144000000b0041214a0448emr246271qtp.1.1698189438375;
Tue, 24 Oct 2023 16:17:18 -0700 (PDT)
X-Received: by 2002:a05:6870:724b:b0:1e9:ade8:7417 with SMTP id
y11-20020a056870724b00b001e9ade87417mr6262189oaf.8.1698189438126; Tue, 24 Oct
2023 16:17:18 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.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, 24 Oct 2023 16:17:17 -0700 (PDT)
In-Reply-To: <uh8a78$3rfe1$3@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=79.224.108.17; posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 79.224.108.17
References: <uh5vno$36el4$1@dont-email.me> <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
<uh6m7s$3cc1o$1@dont-email.me> <cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>
<uh8a78$3rfe1$3@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <747cb121-97c5-4315-9d86-862735408859n@googlegroups.com>
Subject: Re: Proposal on LATEST-NAME
From: minforth@arcor.de (minforth)
Injection-Date: Tue, 24 Oct 2023 23:17:18 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2050
 by: minforth - Tue, 24 Oct 2023 23:17 UTC

Ruvim schrieb am Dienstag, 24. Oktober 2023 um 13:36:11 UTC+2:
> On 2023-10-24 06:49, minforth wrote:
> > Perhaps a new wordset COMPILER-EXTENSION would be better.
> > Also as a good place for recognizers, whenever that proposal makes it.
>
> It's true for recognizers, since a program can affect the behavior of
> the Forth text interpreter via Recognizer API (and even use it for its
> own purposes).
>
> But the words LATEST-NAME-IN and LATEST-NAME simply provide some
> information from word lists, like the words FIND-NAME-IN or
> TRAVERSE-WORDLIST do.

FIND-NAME-IN is exotic but I can guess... ;-)

Anyhow IMO it needs really good arguments to increase Forth's already
overpopulated word zoo. It's more libraries we need.
But I don't want to be negative, you asked for thoughts.

Re: Proposal on LATEST-NAME

<uh9qdi$e7uh$1@dont-email.me>

  copy mid

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

  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 (dxf)
Newsgroups: comp.lang.forth
Subject: Re: Proposal on LATEST-NAME
Date: Wed, 25 Oct 2023 12:18:42 +1100
Organization: A noiseless patient Spider
Lines: 28
Message-ID: <uh9qdi$e7uh$1@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
<uh6m7s$3cc1o$1@dont-email.me>
<cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>
<uh8a78$3rfe1$3@dont-email.me>
<747cb121-97c5-4315-9d86-862735408859n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 25 Oct 2023 01:18:42 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="43764e6f4a52daf742c79221d00345e0";
logging-data="466897"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18rCnJ0NXZbLJ2y+K3bE6Fb"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:p8NH04iNJ2C/DEH9rL4vKhpRNII=
Content-Language: en-GB
In-Reply-To: <747cb121-97c5-4315-9d86-862735408859n@googlegroups.com>
 by: dxf - Wed, 25 Oct 2023 01:18 UTC

On 25/10/2023 10:17 am, minforth wrote:
> Ruvim schrieb am Dienstag, 24. Oktober 2023 um 13:36:11 UTC+2:
>> On 2023-10-24 06:49, minforth wrote:
>>> Perhaps a new wordset COMPILER-EXTENSION would be better.
>>> Also as a good place for recognizers, whenever that proposal makes it.
>>
>> It's true for recognizers, since a program can affect the behavior of
>> the Forth text interpreter via Recognizer API (and even use it for its
>> own purposes).
>>
>> But the words LATEST-NAME-IN and LATEST-NAME simply provide some
>> information from word lists, like the words FIND-NAME-IN or
>> TRAVERSE-WORDLIST do.
>
> FIND-NAME-IN is exotic but I can guess... ;-)
>
> Anyhow IMO it needs really good arguments to increase Forth's already
> overpopulated word zoo.

Compiler extension is what 200x is mostly interested in.

> It's more libraries we need.

Apparently not but feel free to provide them. At a guess they will be met
with the same enthusiasm as was Hugh's and those before him. I put great
value on the libraries I include with DX-Forth. Other users very little.
Perhaps they need to find their own path - just as I did.

Re: Proposal on LATEST-NAME

<eda2cacc-f0f4-41be-9dcb-45a9475aa6acn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:4607:b0:66a:d295:960c with SMTP id oq7-20020a056214460700b0066ad295960cmr299114qvb.3.1698201427982;
Tue, 24 Oct 2023 19:37:07 -0700 (PDT)
X-Received: by 2002:a05:6871:3329:b0:1e9:a13c:ffba with SMTP id
nf41-20020a056871332900b001e9a13cffbamr6594158oac.9.1698201427715; Tue, 24
Oct 2023 19:37:07 -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, 24 Oct 2023 19:37:07 -0700 (PDT)
In-Reply-To: <nnd$6c4c8068$70e3e2c1@f441ed190485f784>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:3f7a:20d0:e54e:2fbe:8f87:9092;
posting-account=V5nGoQoAAAC_P2U0qnxm2kC0s1jNJXJa
NNTP-Posting-Host: 2600:1700:3f7a:20d0:e54e:2fbe:8f87:9092
References: <uh5vno$36el4$1@dont-email.me> <uh63vl$37cua$1@dont-email.me>
<nnd$30062717$643b5347@6d8f35107c88f606> <uh954j$4q87$1@dont-email.me> <nnd$6c4c8068$70e3e2c1@f441ed190485f784>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <eda2cacc-f0f4-41be-9dcb-45a9475aa6acn@googlegroups.com>
Subject: Re: Proposal on LATEST-NAME
From: sdwjack69@gmail.com (S Jack)
Injection-Date: Wed, 25 Oct 2023 02:37:07 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: S Jack - Wed, 25 Oct 2023 02:37 UTC

On Tuesday, October 24, 2023 at 2:40:51 PM UTC-5, none albert wrote:
> >> It bears repeating:
> >>
> >> ***********************************************************
> >> * Names are SO not determining the identity of a word. *
> >> ***********************************************************
>
> A name token is a single-cell value that identifies a Forth
> definition. Note that it may not have a name.

Two ideas that appeal to me (and likely only me) are:
1. Have standard behaviors, but not names. Users free to
assign whatever names that fit the context where the
behavior is used. COUNT and C@++ in my source have the
same behavior; which get used depends on the context where
applied. Your FOO with behavior xt:666 can be my BAR ; just
map if exchange of source code is desired.

2. Like postscript in general define words anonymously. Assign
name only if the behavior needs to persist.

Just mentioning this as Albert seems to have some leanings in
this direction.
--
me

Re: Proposal on LATEST-NAME

<17c25100-9a8d-4162-8317-b36ae1158095n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:3c94:b0:774:cd1:f036 with SMTP id tp20-20020a05620a3c9400b007740cd1f036mr209874qkn.14.1698215940952;
Tue, 24 Oct 2023 23:39:00 -0700 (PDT)
X-Received: by 2002:a05:6808:308f:b0:3ae:2710:cf87 with SMTP id
bl15-20020a056808308f00b003ae2710cf87mr5680848oib.7.1698215940753; Tue, 24
Oct 2023 23:39:00 -0700 (PDT)
Path: i2pn2.org!i2pn.org!news.chmurka.net!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.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, 24 Oct 2023 23:39:00 -0700 (PDT)
In-Reply-To: <uh9qdi$e7uh$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=79.224.108.17; posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 79.224.108.17
References: <uh5vno$36el4$1@dont-email.me> <a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
<uh6m7s$3cc1o$1@dont-email.me> <cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>
<uh8a78$3rfe1$3@dont-email.me> <747cb121-97c5-4315-9d86-862735408859n@googlegroups.com>
<uh9qdi$e7uh$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <17c25100-9a8d-4162-8317-b36ae1158095n@googlegroups.com>
Subject: Re: Proposal on LATEST-NAME
From: minforth@arcor.de (minforth)
Injection-Date: Wed, 25 Oct 2023 06:39:00 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1839
 by: minforth - Wed, 25 Oct 2023 06:39 UTC

dxf schrieb am Mittwoch, 25. Oktober 2023 um 03:18:47 UTC+2:
> On 25/10/2023 10:17 am, minforth wrote:
> > It's more libraries we need.
> Apparently not but feel free to provide them.

There is no standard API for any standard Forth system.

Other good guys test their code snippets against a number of
popular free Forth compilers, write wrappers, and provide
missing words.

I must be a lazy bad guy. :-)

package manager (was: Proposal on LATEST-NAME)

<uhb46j$p42d$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!news.nntp4.net!news.hispagatos.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ruvim.pinka@gmail.com (Ruvim)
Newsgroups: comp.lang.forth
Subject: package manager (was: Proposal on LATEST-NAME)
Date: Wed, 25 Oct 2023 13:11:45 +0000
Organization: A noiseless patient Spider
Lines: 54
Message-ID: <uhb46j$p42d$1@dont-email.me>
References: <uh5vno$36el4$1@dont-email.me>
<a7cd17fc-6257-471c-ae11-2aa1b14b33dcn@googlegroups.com>
<uh6m7s$3cc1o$1@dont-email.me>
<cc504ce4-e43a-4035-bf60-f626919ac196n@googlegroups.com>
<uh8a78$3rfe1$3@dont-email.me>
<747cb121-97c5-4315-9d86-862735408859n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 25 Oct 2023 13:11:47 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="82a9247714f26487932d4c7b87eb1059";
logging-data="823373"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+nIjjatd8YKvEpscafO0aK"
User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101
Firefox/102.0
Cancel-Lock: sha1:W38QrIT4XdkgsOXmEUz6fye2qjA=
Content-Language: en-US
In-Reply-To: <747cb121-97c5-4315-9d86-862735408859n@googlegroups.com>
 by: Ruvim - Wed, 25 Oct 2023 13:11 UTC

On 2023-10-24 23:17, minforth wrote:
> Ruvim schrieb am Dienstag, 24. Oktober 2023 um 13:36:11 UTC+2:
>> On 2023-10-24 06:49, minforth wrote:
>>> Perhaps a new wordset COMPILER-EXTENSION would be better.
>>> Also as a good place for recognizers, whenever that proposal makes it.
>>
>> It's true for recognizers, since a program can affect the behavior of
>> the Forth text interpreter via Recognizer API (and even use it for its
>> own purposes).
>>
>> But the words LATEST-NAME-IN and LATEST-NAME simply provide some
>> information from word lists, like the words FIND-NAME-IN or
>> TRAVERSE-WORDLIST do.
>
> FIND-NAME-IN is exotic but I can guess... ;-)

Can you suggest something better? ))

It's a part of the Forth "living" standard already.

> Anyhow IMO it needs really good arguments to increase Forth's already
> overpopulated word zoo.

> It's more libraries we need.

I will say more — we need the *infrastructure* for libraries.

Using third party libraries in Forth is a pain, especially if you want
to do it regardless of a particular Forth system.

I have an idea of a core library that extends "include" and "require" to
allow them understanding URIs and load+cache files via the Internet on
the fly.

If the used Forth system does not provide the required capabilities, the
user can use another Forth system to just cache all libraries, and then
use the first one (without changing any source codes).

When this library exists, a more advanced package manager (and module
manager) can be developed on the top of this library.

Well we have https://theforth.net/package/f
But this package manager is tied to a single repository and requires too
much manual work.

> But I don't want to be negative, you asked for thoughts.

--
Ruvim

Pages:12
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor