TTFlogo2.gif (2585 bytes)

 

Advanced Topics in PL/I - Topical Outline

Day One

Introduction
  
Computer Exercise: Lab set up


Built-in Functions
    General syntax
    Arithmetic and precision-handling built-in functions
    String-handling built-in functions and pseudovariables
    Array-handling built-in functions
    Mathematical built-in functions
    Date / time built-in functions
    Miscellaneous built-in functions

    Computer Exercise: String Handling with Built-in Functions

 

Varying length string processing
The PL/I compiler and its options
Subroutines
    Invocation
    Arguments and parameters
    Dummy arguments
The Binder / Linkage Editor
    Control statements
    Parambers
Obtaining PARM data from the EXEC statement

   Computer Exercise: Working with Subroutines

 

Day Two

Behind the scenes
    Object Modules
    Load Modules
Module maintenance 1 - replacing a subroutine
User-written Functions
Built-in Subroutines

   Computer Exercise: Maintaining a Subroutine

 

Module maintenance 2 - Dynamic calls
    FETCH and RELEASE
    Bind alternatives
    DLLs
Packages
Memory issues
z/OS memory organization

   Computer Exercise: A Fetching Program

 

Conditions
    Enabling / Disabling
    User condition handling
    Data handling, I/O, program checkout, and miscellaneous conditions
    Using conditions
Variable Length Record format files
    Physical layout
    Self-defining data
    How you work with variable length records in PL/I

    Computer Exercise: Variable Length Records

 

Day Three

Storage management
    Scope attributes: INTERNAL and EXTERNAL
    Scope rules
    Storage attributes: STATIC, AUTOMATIC, CONTROLLED, BASED
    Stacks and DSA's
ALLOCATE / FREE for CONTROLLED variables
Pointers and based variables
    Locate mode I/O

    Computer Exercise: Locate Mode I/O

 

ALLOCATE for BASED variables
NULL
FREE for BASED variables
List Processing
    Types
    How to do list processing in PL/I
    List processing pseudo-code

    Computer Exercise: List Processing

 

Day Four

Areas
  
Introduction
  
Areas and storage classes
  
Extents
  
Area I/O
  
Offsets
  
Area built-in functions
  
The AREA condition
Storage and pointer built-in functions
Storage and pointer built-in subroutines

    Computer Exercise: Areas, Offsets, and Sorted List Processing

 

The PL/I Pre-processor - overview
Including files

The preprocessors: Include, Macro, SQL, and CICS
The Macro preprocessor
  
Compiler parameters
  
Compiler directives
  
Preprocessor variables
  
Preprocessor statements
  
Preprocessor built-in functions
  
Preprocessor procedures
   Computer Exercise: Using the Preprocessor

 

Day Five

Stream I/O
  
Declaring stream files
  
Print files
  
Data directed I/O - GET DATA / PUT DATA
  
List directed I/O - GET LIST / PUT LIST
  
Edit directed /IO - GET EDIT / PUT EDIT
  
Edit format items
  
Other stream I/O options
    Computer Exercise: Using Stream I/O

 

PL/I Run time options
    Storage management: stack and heap Issues
  
TRAP
Performance considerations
  
Things to avoid
  
Good stuff
  
Compiler options that affect performance
    Computer Exercise: Tuning and Storage Control

 

Odds and ends
  
Introduction to multi-threading
  
Introduction to interlanguage communication
  
Introduction to XML in PL/I
    Computer Exercise: Multi-threading

 

 

Course information: E-720 / 5 Days            These Materials © Copyright 2009 by Hunter Cobb             V5.x

 

Course Objectives
Course description
Home page

 

this page last updated: 06 September, 2009
this page copyright © 2009 by The Trainer's Friend, Inc.