summary refs log tree commit diff
path: root/log-load.e
diff options
context:
space:
mode:
Diffstat (limited to 'log-load.e')
-rw-r--r--log-load.e47
1 files changed, 0 insertions, 47 deletions
diff --git a/log-load.e b/log-load.e
index 2b7cbd2..d1e4a2f 100644
--- a/log-load.e
+++ b/log-load.e
@@ -108,53 +108,6 @@
 ~ this file.
 
 
-~   Find-in is the main word that provides the capability to look up words by
-~ name, though it's usually used via "find" rather than being called directly.
-~
-~   Find-in traverses the linked list formed by a particular dictionary's
-~ next-entry pointers, looking for an entry that matches a given name. The
-~ dictionary pointer is the pointer (not handle) to the root of the list,
-~ which runs from newest to oldest. For example, dereferencing the value of
-~ "latest" gives the pointer to the main dictionary, which can be passed to
-~ find-in.
-~
-~   Having find-in separated out is convenient when working with alternate
-~ dictionaries, but the main reason for having it is not convenience but
-~ necessity: During Evocation's startup, there is a period before global
-~ variables are easily accessible, so there would be no way to implement
-~ "find". The warm-start routine (see execution.e and transform.e) has the
-~ job of fixing that, and it makes extensive use of find-in to do so.
-~
-~ TODO this probably deserves its own file?
-~
-~ (dictionary pointer, string pointer -- entry pointer or 0)
-: find-in
-  ~ It will be more convenient to have the entry pointer on top.
-  swap
-
-  {
-    ~ If the entry pointer is null, exit.
-    ~ (name pointer to find, current entry pointer)
-    dup 0 = { swap drop exit } if
-
-    ~ Check this entry's "hidden" flag.
-    ~ (name pointer to find, current entry pointer)
-    dup entry-flags@ 0x80 & 0x80 != {
-      ~ Test whether this entry is a match.
-      ~ (name pointer to find, current entry pointer)
-      2dup 10 + stringcmp 0 = {
-        ~ If we're here, it's a match. Clean up our working state and exit.
-        ~ (name pointer to find, current entry pointer)
-        swap drop exit
-      } if
-    } if
-
-    ~ If we're here, it's not a match; traverse the pointer and repeat.
-    ~ (name pointer to find, current entry pointer)
-    @
-  } forever ;
-
-
 ~   This has the same value as the constant control-stack-size, which is
 ~ defined in execution.e. Everything will break if it doesn't.
 ~