The Future of
the COBOL
Programming
Language
Karl Schenk
University of Wisconsin-Platteville
Department of Computer Science and Software
Engineering
About Me
Senior (Fifth Year)
Majors:
Computer Science (CIS)
Business Administration (CS)
Related Jobs
UW-Platteville OIT – Lab Consultant
John Deere Dubuque Works – Part Time
Student Information Technology
Topics
Introduction
What is COBOL?
COBOL Structure
COBOL History
COBOL-2002
Object Oriented COBOL
XML and COBOL
Micro Focus and Net Express
KOBOL
COBOL and higher Education
Employment Opportunities and COBOL
Conclusion
Introduction
“I’ve coded in COBOL but never
compiled”
150-200 Billion Lines of COBOL
Up to 2 billion Lines added each
year
Most COBOL is used at large
corporations and by government
Topics
Introduction
What is COBOL?
COBOL Structure
COBOL History
COBOL-2002
Object Oriented COBOL
Micro Focus and Net Express
KOBOL
XML and COBOL
COBOL and higher Education
Employment Opportunities and COBOL
Conclusion
What is COBOL?
Common Business Oriented
Language
Procedural Language
Third Generation Language
Compiled Language
Most often used on Mainframes
but is on PC’s too.
What is COBOL?
What is COBOL?
What is COBOL?
What is COBOL?
Topics
Introduction
What is COBOL?
COBOL Structure
COBOL History
COBOL-2002
Object Oriented COBOL
XML and COBOL
Micro Focus and Net Express
KOBOL
COBOL and higher Education
Employment Opportunities and COBOL
Conclusion
COBOL Structure
Hierarchical
English-Like
Add 1 to Counter Giving Counter
4 Divisions
Identification, Environment, Data,
and Procedure
COBOL Structure
Identification Division
Program Name
Other items like programmer and
compile date should be comments
Environment Division
Describes the hardware the program
is running on
Briefly describes the data files
COBOL Structure
Data Division
Defines all data
Files and Working Storage
Procedure Division
Logic of the program
Divided into Paragraphs
COBOL Structure
Code is restricted by columns
1-6 – Line numbers
7 - Comment area
8-72 – Margins A and B (code)
73-80 – Identification and labels
Cobol Structure
“Hello World”
IDENTIFICATION DIVISION.
Program-Id. Hello-World.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
100-PARAGRAPH.
DISPLAY "Hello, world.".
Stop Run.
Topics
Introduction
What is COBOL?
COBOL Structure
COBOL History
COBOL-2002
Object Oriented COBOL
XML and COBOL
Micro Focus and Net Express
KOBOL
COBOL and higher Education
Employment Opportunities and COBOL
Conclusion
COBOL History
1959 Department of Defense
wanted a universal Business
Application Language
CODASYL was formed
11 Government and 15 Commercial
attendees
COBOL History
COBOL-61
ANSI/ISO Standards
COBOL-65
COBOL-74
COBOL-85
COBOL-2002
Technical Reviews
Topics
Introduction
What is COBOL?
COBOL Structure
COBOL History
COBOL-2002
Object Oriented COBOL
XML and COBOL
Micro Focus and Net Express
KOBOL
COBOL and higher Education
Employment Opportunities and COBOL
Conclusion
COBOL-2002
Topic Brief Description
Margins A & B
Restrictions on data placed in these margins will no
longer be requirements, only recommendations
Identification Division.
Only paragraph permitted in this division will be the
Identification Division.
Name Lengths Increased from 30 to 60 characters
Comments In-line comments will be allowed after a *> symbol
Arithmetic Operators Spaces will not be required around operators
Sort
The SORT keyword can now be used on both tables
and files
Deletion of Files
A DELETE statement will allow deletion of an entire
file with only one instruction.
Topics
Introduction
What is COBOL?
COBOL Structure
COBOL History
COBOL-2002
Object Oriented COBOL
XML and COBOL
Micro Focus and Net Express
KOBOL
COBOL and higher Education
Employment Opportunities and COBOL
Conclusion
Object Oriented COBOL
“A programming paradigm in which
a program is viewed as a
collection of discrete objects
that are self-contained
collections of data structures
and routines of an object.”
Microsoft Computer Dictionary
Object Oriented COBOL
Requires 2 Programs
Driver
Trigger
Object Oriented COBL
Driver Program
Registers the class
Declares Object Reference data-
items
Creates an object from the class
Accesses a method from the class
Cleans up memory