Application Environment

Every method/function execution has a call frame associated with it managed by the Kernel.

A call frame contains all owned and referenced objects usable by the running function. These objects are referrable by NodeId and system-defined indices.

Invocations

Owned and referenced objects may have methods invoked (creating a new call frame). Owned objects may be passed in as arguments and may be received in these invocations.

Object Creation/Destruction/Globalization

Objects of the current blueprint may be instantiated, creating a new owned object into the call frame, or dropped, in which case the owned object gets removed from the call frame.

Actor State Read/Write

A call frame also contains a reference to the actor, or callee object (i.e. self in object-oriented languages). This is maintained to allow read/writes of state for the given actor.

System Module Functions

Additional system functions are available to the application layer implemented by System Modules. Currently, these include:

  • Events
  • Logging
  • Costing
  • Transaction Runtime