APL2 for Mainframes
                               APL2 Version 2 (Program Product 5688-228)
       APL2 Application Environment Version 2 (Program Product 5688-229)
------------------------------------------------------------------------


                  Now Available - Version 2 Release 2


Overview


APL2(R) Version 2, developed by the APL Products and Services Team at
the IBM Silicon Valley Lab in San Jose, California, provides users of
IBM mainframe computers with a full-function APL2 environment for the
CMS and TSO operating systems.

APL2 is a programming language useful to both application program
developers and interactive end-users.  Data processing professionals
find APL2 to be a highly productive tool for developing both commercial
and scientific applications.  APL2 is also considered to be extremely
effective in such diverse areas as "what-if" modeling, exploratory
programming, interactive computing, decision support, and data analysis.

APL2 Version 2 is compatible with Workstation APL2 Version 2.0, which
runs on IBM pSeries(tm) and RS/6000(R) machines with AIX(R), the Sun(tm)
SPARCstation(tm) with Solaris(tm), and personal computers with Linux(tm)
or Windows(R).  All of the APL2 systems permit transparent import and
export of programs and data via the ")IN" and ")OUT" commands, and so
allow for a high degree of application portability.


Highlights


 -  Features flexible, nested data structures in which each item in an
    array can itself be an array.
 -  Uses 31-bit addressing by:
    -   Allowing user workspaces to be up to nearly a gigabyte in size
    -   Allowing much of the product to reside above the 16-megabyte
        line.
 -  Provides the ability to distribute data and processing among
    multiple APL2 systems connected through TCP/IP.  The APL2 systems on
    CMS, TSO, AIX, Linux, Solaris and Windows all contain the following
    cooperative processing features:
    -   Cross-system shared variables for synchronization and data
        transfer in a distributed processing environment.
    -   A TCP/IP socket interface for communicating with non-APL
        applications.
    -   Program control of an APL2 session by another application or
        APL2 user.
    -   Remote session manager capability.
 -  Provides access to the IBM relational data base products (SQL/DS(tm)
    or DB2(R)), both directly using the Structured Query Language, and
    through a callable interface to the Query Management Facility
    (QMF(tm)).
 -  Allows an APL application in an APL2 workspace to be "packaged" and
    converted to a load module, known as a namespace.  Namespaces have
    an independent name scope, improved maintenance, and, in some cases,
    reduced storage requirements.
 -  Provides ability to call, and be called by, non-APL language
    programs.
 -  Provides file support, including the ability to manipulate files
    using APL2 constructs, even if the file is larger than the workspace
    size.
 -  Provides national language support, including:
    -   Application development in 13 different national languages
    -   System messages and help text in several national languages
    -   DBCS support.  APL2 accepts double-byte data from, and passes it
        to, other IBM products, and supports double-byte data in error
        messages, session manager logs, and copy files.  The session
        manager, APL editors, APL statements, library commands, and
        relational databases provide additional DBCS support.
 -  Supports use of operating system or user-written editors for editing
    APL2 programs
 -  Is upward-compatible from APL2 Version 1 and generally
    upward-compatible from VS APL.


The APL2 Version 2 Products


The APL2 full product consists of the APL2 language, interfaces to
system services, development tools (editors, session manager), and
sample applications and utilities which can be imbedded in user
applications.

The APL2 Application Environment consists of the APL2 language and
interfaces to system services.  It can be used to run applications
written and packaged using the full APL2 product.

APL2 interfaces to system services are supplied as Associated Processors
and Auxiliary Processors.  Associated processors provide a synchronous
interface to services via the name association facility of the APL2
language.  Auxiliary processors provide an asynchronous interface to
services using the shared variable facility.

Associated Processors included:

P10   REXX Processor.  Allows use of REXX functions as APL2 functions,
      access to REXX variables, manipulation of REXX programs as APL2
      arrays, and access to CMS files or MVS sequential data sets.

P11   Calls to External Routines.  Allows an APL2 program to call
      routines residing outside the APL2 workspace.  The called routines
      can be written in compiled languages such as FORTRAN, Assembler, C
      and PL/I, or in APL2.

P12   Files as Variables.  Allows manipulation of files with APL
      primitive functions and operators.  Files can be operating system
      sequential files or APL files in the same format as those accessed
      with AP 121.

Auxiliary Processors included:

AP100 Host System Command processor.  Supports the submission of host
      operating system commands from an APL2 application.

AP101 Alternate Input (Stack) processor.  Allows the creation of a stack
      of programmable input to either APL2 or the host system.

AP102 Main Storage Access processor.  Used by system programmers to
      obtain the contents of specified areas of main storage.

AP110 CMS file processor.  Accesses records on a CMS file sequentially
      or directly.  Files may be created, updated, or read.

AP111 QSAM File Processor.  Processes sequential data files on I/O
      devices supported by the operating system.  These devices include
      printers, punches, readers, disks and tapes.

AP119 TCP/IP Socket API.  Passes requests to TCP/IP, which provides
      communication facilities across networks.

AP120 Session Manager Command processor.  Allows use of APL2 session
      manager commands under program control.

AP121 APL2 Data File processor.  Stores APL2 arrays outside the APL2
      workspace in a sequential or direct access file.

AP123 VSAM File Processor.  Performs file operations on entry-sequenced,
      key-sequenced, or relative-record VSAM files.

AP124 Text display processor.  Allows reading from and writing to a
      formatted screen.

AP126 GDDM(R) Processor.  Passes requests to the Graphical Data Display
      Manager, allowing creation and printing of full-screen panels and
      graphical objects.

AP127 SQL Processor.  Provides access to IBM relational database
      products DB2 (on TSO) and SQL/DS (on CMS), including remote access
      to distributed databases, via the SQL structured query language.

AP210 BDAM File Processor.  Provides relative record access to
      fixed-length, unkeyed disk files on TSO.

AP211 APL2 Object Library.  Provides a facility for storing APL2 arrays
      by name in an object file.   Files created by AP 211 are directly
      portable across AIX, Solaris, Linux, Windows, CMS and TSO.


Technical Information


Machine Requirements: APL2 is designed to run on any IBM mainframe
system that includes the extended floating point feature and has
sufficient storage to meet the combined storage requirements of the host
operating system, access methods, interactive subsystem, APL2 (including
the installed auxiliary processors), GDDM, and database system when
used.

APL2 is designed to run on the IBM 3270 Information Display System
family of products with the appropriate APL feature.  For those
installations and users who elect to use GDDM, APL2 also supports any
additional terminals for which GDDM provides a compatible interface.
APL2 should also run on other terminals or terminal emulators that are
functionally equivalent.

Programming Requirements: APL2 Version 2 Release 2 operates under the
following operating system environments:

 -  MVS/ESA(tm), OS/390(R) and z/OS(tm).  TSO/E is required.

 -  VM/ESA(R) and z/VM(tm).


Publications


   Title                                             Order Number
   APL2 Family of Products ............................ GH21-1090
   APL2 at a Glance ................................... SC26-4676
   An Introduction to APL2 ............................ SH21-1073
   APL2 Programming:  Language Reference .............. SH21-1061
   APL2 Reference Summary ............................. SX26-3999
   APL2 GRAPHPAK: User's Guide and Reference .......... SH21-1074
   APL2 Programming:  Using Structured Query Language . SH21-1057
   APL2 Migration Guide ............................... SH21-1069
   APL2 Systems Service Reference ..................... SH21-1054
   APL2 Programming:  Using the Supplied Routines ..... SH21-1056
   APL2 Processor Interface Reference ................. SH21-1058
   APL2 Programming:  Messages and Codes .............. SH21-1059
   APL2 Installation and Customization under TSO ...... SH21-1055
   APL2 Installation and Customization under CMS ...... SH21-1062
   APL2 Diagnosis ..................................... LY27-9601
   APL2 Keyboard Decals ............................... SC33-0604


Additional Information


Web:            http://www.ibm.com/software/awdtools/apl
Email:          apl2@vnet.ibm.com
Phone:          1-408-463-APL2  (1-408-463-2752)
Mail:           APL Products and Services - Dept. PGUA/E1
                IBM Silicon Valley Laboratory
                555 Bailey Avenue
                San Jose, CA  95141


Ordering


To order APL2 Version 2, contact your IBM marketing representative, OR,
in the United States and Canada, call 1-800-IBM-CALL.


                                                          April 2015


----------
  This publication is for general guidance only.  All products referred
  to in this publication are subject to availability.
  IBM, APL2, System/370, SQL/DS, QMF, GDDM, MVS/ESA, MVS/SP, VM/ESA,
  VM/XA, pSeries, RS/6000, AIX and DB2 are trademarks of the IBM
  Corporation.  Linux is a trademark of Linus Torvalds.  Sun and Solaris
  are trademarks of Sun Microsystems, Inc.  SPARCstation is a trademark
  of SPARC International, Inc.  Windows is a trademark of Microsoft
  Corporation.