Forth200x meeting 2025-09-10..2025-09-12

Participants

Move to Ex-Members:

Brad Rodriguez, Howerd Oakford, Jermaine Davis, Krishna Myneni

Meeting transcript

Notes taken by AE

Review of the minutes

Accept Minutes of Last Meeting in 2024 in Newcastle: Vote #37 9Y:0N:0A

Review of Procedures

First memory access, then Recognizers, then anything else.

Votes are closed at the end of the meeting

Reports

Chair

Speeding up is not working

Editor

There is a 2020.1 document that reflects the work up to 2020.

(There is also a 2021-1 document.)

Technical Officer

Currently the following domains are owned by Peter Knaggs:

The following domain is owned by Gerald Wodni:

These domains’ ownership shall be transferred to Wodni & Pelc GmbH. Wodni & Pelc GmbH might decide to keep the technical ownership and give the administrative ownership away to a Forth Association in the future.

Peter Knaggs passes the domains forth200x.org and euroforth.org to Wodni and Pelc GmbH., and later possibly to Forth e.V.

forth200x.org (currently Peter Knaggs) euroforth.org (currently Peter Knaggs) forth-standard.org (currently Gerald Wodni)

Vote #38: 9Y:0N:0A

Treasurer

Nothing to report

Election/Confirmation of officers

Next time 2028.

Proposals

r1531 Special Memory access words:

Note that SwiftForth has w+! etc. and go to CfV. (Action: AE)

Recognizers

Mention some possibly contentious issues.

Long discussion about recognizer sequences: nesting, deferred words, is forth-recognize deferred, are recognizer sequences growable or shrinkable.

Standardize translate-nt translate-num translate-dnum translate-float, not scan-translate-string.

The standard already makes the true value of state implementation-defined, so a system can do postpone state with -2 in state. A program defining a text interpreter would still have to use a separate variable for postpone mode, though.

Mention interpreting, compiling, postponing in the rationale, don’t standardize them. Evaluate is now generic enough to usually avoid the need for a user-defined recognizer.

Standardize: rec-nt rec-num (single and double and chars) rec-float

rec-local is the right name instead of rec-locals.

Types:

translation: The result of a recognizer; the input of interpreting, compiling, and postponing; it’s a semi-opaque type that consists of a rectype (to be renamed) at the top of the data stack and additional data on various stacks below.

Example:

s" 123" rec-forth ( translation ) interpreting

Words:

rec-name ( c-addr u -- translation ) 
rec-local ( c-addr u -- translation ) (if present)
rec-number ( c-addr u -- translation ) (for single cells, double cells, number prefixes, char)
rec-float ( c-addr u -- translation ) (recognize numbers without "e" or not)
rec-none ( c-addr u -- translation )
recs (formerly known as .recognizers)
rec-forth ( c-addr u -- translation ) (deferred word) formerly forth-recognize
rec-sequence: ( xt1 .. xtu u "name" -- )
translate:  formerly rectype:
translate-cell ( x -- translation ) ( -- rectype ) ( x -- x rectype ) formerly translate-num
translate-dcell ( xd -- translation ) formerly translate-dnum
translate-float ( r -- translation ) 
translate-name ( nt -- translation ) ( -- rectype ) formerly translate-nt
translate-none ( -- translation ) formerly r:fail notfound
get-recs ( xt -- xt_u ... xt_1 u )
set-recs ( xt_u ... xt_1 u xt -- )

Do you accept this proposal as is for moving forward and intend to implement it (if you have a Forth System):

The committee has reached consensus on the following write-up: r-1535

Vote #40: 7Y:1N:1A

These words will form a new wordset and get their own chapter in the document.

Review of contributions:

[311] New words: latest-name and latest-name-in (new-words-latest-name-and-latest-name-in #311)

2023-10-23 01:13:22 - ruv

Please refer to the most recent visible definiton in the normative text. (Action: ruv) Proceed to CfV (Action: AE)

[307] Fix stack comments for N>R and NR> (fix-stack-comments-for-n-r-and-nr- #307)

2023-09-13 12:09:40 - LeonWagner

Updated proposal to use u. Move to committee.

Do we accept the new stack comment of N>R and NR>?

Proposal

vote #39: 8Y:0N:0A

[291] Obsolescence for SAVE-INPUT and RESTORE-INPUT (obsolescence-for-save-input-and-restore-input #291)

2023-03-02 19:04:49 - ruv

Make a CfV (Action: AE)

[252] Exclude zero from the data types that are identifiers (exclude-zero-from-the-data-types-that-are-identifiers #252)

2022-08-13 23:24:52 - ruv

Make not just changes in formalities, but also in prose. (Action: PK,ruv)

[251] Clarification for execution token (clarification-for-execution-token #251)

2022-08-13 20:16:29 - ruv

Write up your objections (Action: AE); others can also comment.

[249] Revert rewording the term “execution token” (revert-rewording-the-term-execution-token- #249)

2022-08-12 14:18:35 - ruv

Withdaw it (Done: ruv)

[206] PLACE +PLACE (place-place #206)

2021-07-30 11:19:29 - UlrichHoffmann

Update the proposal and go to CfV (Action:UH)

[184] EMIT and non-ASCII values (emit-and-non-ascii-values #184)

2021-04-03 15:34:40 - AntonErtl

Go to CfV (Action: AE)

[163] Tick and undefined execution semantics (tick-and-undefined-execution-semantics #163)

2020-10-29 00:28:43 - ruv

retracted (Done: ruv)

[148] OPTIONAL IEEE 754 BINARY FLOATING-POINT WORD SET (optional-ieee-754-binary-floating-point-word-set #148)

2020-08-21 21:03:51 - KrishnaMyneni

retired (Done: AE)

Adjourn

Date of next meeting