1. Introduction
Note: To view the complete NEXGEN* code samples (below), it is best to view this on a larger screen.
First, a little history — Born in another era (in 1959 to be exact), COBOL lives on today in over 800 billion lines of code — including code that powers 80% of all
in-person financial transactions. It’s the foundation of critically important legacy systems that have run successfully for decades in many major organizations around the
world.
Although COBOL’s design precludes it from being a general-purpose language like Python or C#, it is well suited for developing data-driven business applications. COBOL’s
forte is the processing of financial transactions, which puts it at the heart of the mission-critical systems that run the world of global finance.
The many advances in the language implemented within COBOL 1985,
2002, 2014, and 2023 have gone a long way to upgrading COBOL for today's demanding applications —
yet there’s still room to make the language cleaner & leaner, and more suited to the current skills and demands of programmers, especially
when it comes to directly integrating the power of AI technology to further support COBOL’s inherent
strengths.
The following Code Example 1.1 shows a section (without AI constructs) that has been extracted from a typical COBOL program.
*> file processing
completed
DISPLAY
"[Status] File Optimization Complete (to "
"data/SX_idx_1.dat)".
CALL
"TimeDelay_1"
USING BY REFERENCE
CycleTime.
DISPLAY SPACES
.
DISPLAY
"Record Counter: " RecordCounter.
CALL
"TimeDelay_1"
USING BY REFERENCE
CycleTimeLong.
*> activate, analyze, strategize FOREX data [not available]
*> update log file
MOVE
"File Optimization Complete (to data/SX_idx_1.dat)"
TO
LogTag.
CALL
"LogUpdate_1"
USING BY REFERENCE
LogTag.
*> close input and output
files
300-CloseFile.
CLOSE
SeqDataFile IdxDataFile.
Code Example 1.1
The following Code Example 1.2 shows a comparable section (with AI constructs) that has been extracted from a NexGen* program.
*> file processing completed
DISPLAY:2
"[Status] File Optimization Complete (to data/SX_idx_1.dat)"
CALL
TimeDelay_1
REFER
CycleTime
DISPLAY
"Record Counter: " RecordCounter
CALL
TimeDelay_1
REFER
CycleTimeLong
*> activate, analyze and execute FOREX expert system strategy
ACTIVATE
Forex20240127
LINK
data/SX_idx_1.dat, SQNeuralNet_5.1
ANALYZE
BRICS
AGAINST
USD, GBP, DEM, JPY
STRATEGIZE
GLOBAL
ACROSS
Forex20240127
IN
data/STRAT_idx_1.dat
*> update log file
MOVE
"Forex Strategy Complete (with data/STRAT_idx_1.dat)"
TO
LogTag
CALL
LogUpdate_1
REFER
LogTag
*> close input and output files
SECTION
CloseFile
CLOSE
SeqDataFile IdxDataFile
Code Example 1.2
It is a testament to COBOL’s original design that there have been only 4 major updates to it over the last
years, which has given COBOL a reputation of being extremely stable and easily supportable – and therefore difficult to replace with new, and seemingly more powerful
languages. The design of the NexGen* language adheres to the fundamental philosophy, upon which COBOL is based, in order to ensure that it continues to support the goal of
large-scale financial system stability and ease of support.
The primary purpose of this Micro-Course is to provide programmers, who already have experience in other high-level languages, with a solid understanding of the basic
characteristics and critical functions of the NexGen*Cobol language.
And finally, "NexGen* In-A-Day" is a work-in-progress. The complete course will be accessible on this site by mid-2024.