# G Glossary

Attribute
  A attribute object is used to define additional properties of an object. The term attribute is also used as a synonym for slot and instance-variable referring to class defined properties.
Class
  A class is an object that acts as a description of other objects called instances of the class. Besides various house-keeping information, a PCE class describes the instance-variables and methods of its instances.
Class-Variable
  A class-variable defines a constant for all instances of the class. Class variables can be used to define default values for an instance-variable. Initial values for class-variables can be specified in the `Defaults` file. See section 8.
Code
  A code object is an object that represents a procedure. Code objects are used for implementation of methods and to associate actions with various events. For example a button object executes its associated code object when depressed. The most typical code object is a message.
Control
  A control is a standard GUI object normally placed in dialog windows. Examples are buttons, text-entry fields and menus.
Event
  An event is an object that represents an activity of the user: mouse-movements, mouse-buttons, keyboard activities.
Forwarding of argument
  When code objects are executed it is common to bind the var objects @arg1, @arg2, ... to pass context information for the executing code. For example, when a method object executes its code it will bind the arguments given to the method to @arg1, ...
Function
  A function is a subclass of class code which yields a value when executed. The most important functions are local variables (var), obtainers and mathetical operations. They may be used as arguments to code objects. They are executed when the code object is executed or when the function needs to be converted to a type that does not accept a function.
Get operation
  Virtual machine operation to request information from some object. Started by the Prolog predicate get/[3-13], when an obtainer is executed or from PCE's built-in functionality.
GUI
  Abbreviation for Graphical User Interface.
Inheritance
  The sharing of definition from a super-class. When a PCE class is created from a super-class it is initially a copy of this super-class. After creation, instance variables and methods may be added and/or redefined.
Instance
  Synonym for object, often use to stress the fact that an object belongs to a particular class.
Instance-variable
  Placeholder for the local-state associated with an object. An instance-variable is associated with a class and has a name and a type. Each of the instances of the class defines a value for the instance variable. Instance variables are represented by class variable.
Message
  A message is an object representing a send-operation. The phrase ``sending a message to X'' is equivalent to ``invoking a get- or send-operation on X''.
Method
  A method maps a selector and a type vector onto an implementation which is either a C-function or a code object. PCE defines both get- and send-methods. If a send-operation is invoked on an object, PCE will find a method associated with the class of the object with a matching selector, check the argument types and invoke the implementation of the method.
Object-reference
  An object-reference is the identifier for a particular instance. In Prolog object-references are represented by @Integer or @Atom.
Object
  An object is en entity in PCE's world that is identified by an object-reference and has a local state. An object is an instance of a class. The class defines both the constituents of the local state as well as the operations (methods) understood by the object.
Obtainer
  An obtainer is a function which invokes a get-operation when evaluated. The class name is `?'.
Recogniser
  A recogniser object parses events for a graphical object.
Selector
  A selector is the name of a send-operation or get-operation.
Send Method
  Refinement of method that maps a send-operation onto its implementation. See also Method
Send operation
  Virtual machine operation which invokes of a send-method on some object. Started by the Prolog predicate send/[2-12], when an message is executed or from PCE's built-in functionality.
Slot
  Equivalent to instance_variable.
Super-class
  The super-class of a class serves as the initial definition of a class. See also inheritance.
Template-class
  User-defined subclass of class template. The refinements introduced from template can be imported in another user-defined class using the predicate use_class_template/1.
Var
  A var object is a function. The commonly used vars objects are: @arg1, ... (general argument forwarding), @receiver (receiver or a message), @event (currently processes event object).