ScopeLink

From OpenCog
Jump to: navigation, search

The ScopeLink is a type of Section used as a base class form many other Link types, including LambdaLink, QueryLink and PutLink. It is a private link type, and should never be used directly in user code; rather, it is a C++ class that provides common utility methods to it's users, including variable management, beta-reduction and quoting. It is a base class for the private link types RewriteLink and PrenexLink which provide additional methods for beta reduction of increasing sophisticaion.

It inherits from Section, in that it is a specific kind of section, attuned to connecting together variables, usually typed variables, so that e.g. function composition can be performed.

See LambdaLink and ScopeLink for details.

Private link type

Users should never use the ScopeLink atom directly; rather, it is a point in the type hierarchy that provides tooling and functions for other atom types.

The methods that it provides are not accessible via atomese, nor in python or scheme, nor are they intended to be; rather, the C++ class provides a low-level store-house of useful methods for performing different kinds of analysis of terms, and the re-writing thereof. As the warning label says: "Caution: Do not open. Risk of electrical shock. No user serviceable parts inside."