Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Make External Data Structures Visible to APL2

IP.com Disclosure Number: IPCOM000109001D
Original Publication Date: 1992-Jul-01
Included in the Prior Art Database: 2005-Mar-23
Document File: 2 page(s) / 54K

Publishing Venue

IBM

Related People

Beaty, KA: AUTHOR [+2]

Abstract

This article deals with the problem of APL2* using data that is stored externally to the workspace and thus accessible to other programming languages as well. This is an important problem to resolve if APL2 is to be able to make use of utility packages written to handle such areas as workstation displays, databases, etc, packages that are all written in languages other than APL2. These packages typically have a welldefined interface, and APL2 must be able to use this interface in order to be able to use the package.

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

Make External Data Structures Visible to APL2

       This article deals with the problem of APL2* using data
that is stored externally to the workspace and thus accessible to
other programming languages as well.  This is an important problem to
resolve if APL2 is to be able to make use of utility packages written
to handle such areas as workstation displays, databases, etc,
packages that are all written in languages other than APL2.  These
packages typically have a welldefined interface, and APL2 must be
able to use this interface in order to be able to use the package.

      Solving this problem requires the ability to define pieces of
storage allocated to data structures that can be used by both APL2
and the external packages.  To do so, extend the capabilities of
APL2's external processor 11 by adding an additional service routine
call.  This service routine must associate, or map, the piece of
storage external to the APL2 environment itself to an APL2 variable.
This requires:
       .   The ability to define a new variable in APL2 from outside
the APL2 environment, and to attach special constraints on this
variable so it is not moved during APL2's garbage collection.
       .   The ability to add a map detailing the structure content
to the call.  This map, specified using the normal processor 11
argument patterns, determines the number, size, shape and type of
variables that constitute the APL2 variable.  The total length of the
storage...