Browse Prior Art Database

Out of Band Parameter Descriptors for Dynamic Calling Sequence Description

IP.com Disclosure Number: IPCOM000109742D
Original Publication Date: 1992-Sep-01
Included in the Prior Art Database: 2005-Mar-24
Document File: 2 page(s) / 81K

Publishing Venue

IBM

Related People

Conner, MH: AUTHOR [+3]

Abstract

An improvement to software interface technology is presented. A software technique is presented that supports fast interfacing of program components even when it is necessary for the calling component to provide the callee with a description of the types and number of parameters being passed.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Out of Band Parameter Descriptors for Dynamic Calling Sequence Description

       An improvement to software interface technology is
presented.  A software technique is presented that supports fast
interfacing of program components even when it is necessary for the
calling component to provide the callee with a description of the
types and number of parameters being passed.

      Whenever typed and untyped languages are used in the same
execution environment, passing data between them can be problematic.
Usually the problem is most severe in one direction only--passing
data from a typed language environment into an untyped language
environment.  The untyped language generally expects its data to be
self-describing, whereas data originating in a typed language
environment (in general) lacks such a description.

      Prior art in this area relies on the presence of an underlying
interlanguage communications feature that understands the data
representations of both languages and supplies a descriptor
(sometimes known as a dope vector), or a thunk (a small piece of code
that will produce an appropriate value when called on) attached to
each argument of an interlanguage call.  Furthermore, the caller must
typically specify, at a minimum, the target language environment.

      The System Object Model (SOM) [*] is designed so that the SOM
Compiler can provide a single string associated with each SOM method
that specifies the number and type of each argument passed to the
method and the type of the result returned by a method invocation.
These "descriptor" strings are stored in the class, but not used for
normal method invocation sequences when both the method invocation
and the method implementation are done in a typed language.  In fact,
the use of the descriptor, when it does occur, is completely
transparent to the invoker of the method.

      Since it is the untyped-la...