# Glossary

CORBA has a lingo all its own. Here are some of the commonly used terms we mention in this document. These definitions are not complete and contain inaccuracies for the sake of simplicity. For more detailed information, see a text on CORBA.

Attribute
  Technically an attribute is a shorthand for two operations, a setter and a getter, unless it is readonly, in which case it is shorthand only for the getter.

Client
  A process that makes requests on a CORBA object.

exception
  IDL data type similar to exceptions in C++ or Java and conditions in Lisp.

Forwarding
  Instead of responding to a request a CORBA object may designate another object to which this request, and all future requests, are to be forwarded.

Pseudo-interface
  A pseudo-interface is specified in IDL but does not obey all the mapping rules. Typically a pseudo-objects (instance of pseudo-interfaces) must be local to the process. Thus, a pseudo-interface has no corresponding stubs or servant classes generated.

IDL
  Interface Definition Language. Simple language for specifying data types that can be exchanged by CORBA compliant programs. IDL files by default have the extension .idl.

IDL Compilation
  Conversion of an IDL file into a set of Lisp definitions. Normally refers by default to the loading of these definitions into the current Lisp world.

IIOP
  Internet Interoperability Object Protocol. The TCP/IP protocol by which IDL data types are exchanged.

Implementation
  In Lisp, a Lisp class that can respond meaningfully to the methods corresponding to the operations defined in the interface.

Interface
  An interface is an IDL construct that denotes a set of operation signatures to which an object that implements that interface must respond. Similar to abstract class.

Interface Repository
  CORBA Object that holds type definitions.

IOR
  IOR stands for Interoperable Object Reference. It is a data structure associated with a CORBA object that contains enough information to locate that object from anywhere on the network. IOR is often used informally to mean stringified IOR.

Mapping
  The correspondence between IDL and the native data types in some language.

Marshalling
  Conversion of a CORBA value into a stream of bytes, typically to be sent over TCP/IP.

Message
  IIOP communicates via IIOP messages. The most usual are Request and Reply.

module
  top-level scoping construct in IDL, corresponds to packages in Lisp. Modules may be nested.

Naming
  The assocation of a human readable or logical name with an IOR.

Object
  A reference to an implementation of an interface

OMG
  Object Management Group. Consortium of industry, government and academic entities responsible for standardization of CORBA.

Operation
  The IDL notion of a method is called an operation.

ORB
  Object Request Broker. Program component that handles communication from a process to other processes using IIOP or other CORBA protocols. An ORB is usually used to refer to the complex of library functionality that supports CORBA for a language, such as debugging tools and IDL compilation.

ORBLink
  ORB for Allegro Common Lisp

Persistent IOR
  An IOR which is valid beyond the lifetime of any particular server process (i.e, Lisp World)

Proxy
  A placeholder for a remote object implementation. When requests are received by the proxy they are forwarded to the remote object that it reprepresents via IIOP.

Servant
  In Lisp, the instance of a class that implements an interface.

Skeleton
  Same as Servant

Server
  Process that maintains one or more servant objects that are invoked by a client. Sometimes the servant object itself is called a server.

Socket
  Low-level programming interface to TCP/IP. Sockets are abstracted away by the junction interface in ORBLink.

Stringified IOR
  A standardized string representation of an IOR. Any stringified IOR may be interpreted by any CORBA ORB in any language, on any machine.

TCP/IP
  Low-level protocol used to communicate between machines; normally supported directly by the operating system.

Smart proxy
  A proxy that only forwards some requests over IIOP and computes others using local information.

struct
  IDL data type similar to C struct

thread
  Lightweight autonomous concurrent execution context. In Lisp these are called "processes" which is distinct from the Unix meaning of the term.

union
  IDL data type similar to C union

Unmarshalling
  Conversion of a stream of bytes into the CORBA value that it represents.