Advanced Topics in PL/I - Topical Outline
Introduction
Computer Exercise:Course Setup
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
Cataloged procedures
Program preparation files
Compiler parameters
Subroutines
Invocation
Arguments and parameters
Dummy arguments
The Program Binder
Case study
Control statements
Parameters
Obtaining PARM data from the EXEC statement
Computer Exercise:Working with subroutines
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 record format files
Physical layout
Self-defining data
How you work with variable length records in PL/I
Computer Exercise:Variable length records
Storage management
Scope attributes: INTERNAL and EXTERNAL
Scope Rules
Storage Attributes: STATIC, AUTOMATIC, CONTROLLED, BASED
Stacks and DSAs
ALLOCATE/FREE for controlled variables
Pointers and based variables
Locate Mode I/O
Computer Exercise:Locate mode input/output
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
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 Preprocessor - 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
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: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
Typed structures and unions
Introduction to multi-threading
Introduction to interlanguage communication
Introduction to XML in PL/I
Computer Exercise:Multi-threading
E720 / 5 Days
These Materials © Copyright 2013 by Hunter Cobb
Materials version: V5.x
Course Description
Course Objectives
PL/I curriculum
Home page
This page last updated: 31 July, 2014
Copyright © 2014 by Hunter's Training Associates, LLC