Sujet : Re: Using include-file
De : do-not-use (at) *nospam* swldwa.uk (Gerry Jackson)
Groupes : comp.lang.forthDate : 04. Sep 2024, 10:54:48
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vb9ap7$3pdr2$1@dont-email.me>
References : 1
User-Agent : Mozilla Thunderbird
On 02/09/2024 21:11, Ruvim wrote:
Do you know practical cases of using "include-file" in programs?
I can't imagine how this word could be used in standard programs.
Only one idea: to skip BOM (byte-order mark) before include the file contents.
Using other system-specific means, this word can probably be used to organize inter-process communication: when a file descriptor (e.g. a pipe) is passed from one process to another and used as the input source. But why do you need to load Forth code this way?
I've used it to redefine INCLUDED
: included ( ... caddr u -- ... )
r/o open-path-file throw include-file
;
where OPEN-PATH-FILE takes a string specifying a list of alternative relative paths to Forth source files which it tries in turn to open. It does this by creating an absolute directory path and calls OPEN-FILE. If an open succeeds it returns the file-id to be included by INCLUDE-FILE. If no relative path succeeds an exception is thrown.
I've used it to test a program on several different Forth systems, each of which has its own way of handling relative directory paths but they all work with an absolute path.
-- Gerry