Skip to content

Instantly share code, notes, and snippets.

@ruv ruv/spec-for-find.md Secret
Last active Oct 23, 2019

Embed
What would you like to do?

( c-addr -- c-addr 0 | xt n )

Find the definition name whose name matches the counted string at c-addr. If the definition is not found, return c-addr and zero. Otherwise the definition is found, xt is the execution token for name, and n is 1 or -1. If name has other than default interpretation semantics, all the returned values may differ between interpretation and compilation state; otherwise they are the same.

When the definition is found in interpretation state: if the definition is immediate then n is 1, otherwise n is -1; performing xt in intepretation state performs the interpretation semantics for name.

When the definition is found in compilation state: if n is -1, appending the semantics identified by xt to the current definition performs the compilation semantics for name, otherwise performing xt in compilation state performs the compilation semantics for name.

An ambiguous condition exists if the xt returned by FIND is performed in the conditions that are not met the conditions specified above.

"Performing xt" means performing the execution semantics identified by the execution token xt.

@ruv

This comment has been minimized.

Copy link
Owner Author

ruv commented Oct 23, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.