Sujet : Re: Toad using many vocabularies
De : sjack (at) *nospam* dontemail.me (sjack)
Groupes : comp.lang.forthDate : 01. Nov 2024, 16:00:09
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vg2qdp$39jep$1@dont-email.me>
References : 1 2 3
User-Agent : tin/2.6.4-20240224 ("Banff") (Linux/6.8.0-47-generic (x86_64))
sjack <
sjack@dontemail.me> wrote:
mhx <mhx@iae.nl> wrote:
(Assuming you *have* FORGET).
More correctly NIX doesn't repair a broken voc-link chain but fixes it
so that it's not broken after the dictionary is chopped. If the voc-link
chain becomes broken by some unrelated means, it will stay broken until
fixed by the user.
Overview
i. FORGET is kept simple; it chopes the dictionary but does not prevent
broken voclink chain nor does it purge wordlists of loaded
vocabularies nor does it free allocated buffers that no longer
have links in the chopped dictionary.
i. NIX is the main word for chopping the dictionary and restoring a
valid voclink chain, purging wordlists of remaining vocabularies
and freeing allocated buffers which no longer are linked to the
chopped dictionary.
i. [FORGET] is factor of FORGET called by NIX to chop dictionary
i. -VOCLINK is called by NIX to walk voclink chain to restore it to
a valid start address.
i. -CONTEXT is called by -VOCLINK to to purge wordlists in remaining
vocabularies.
i. -BUF is called by NIX to walk buffer allocation list freeing all
buffers no linked to the chopped dictionary.
i. Marker's compile-time save latest, run-time performs NIX .
i. Anew performs MARKER and creates new marker of same name.