home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
RBBS in a Box Volume 1 #2
/
RBBS_vol1_no2.iso
/
007d
/
cobol85.txt
< prev
next >
Wrap
Text File
|
1988-06-20
|
23KB
|
658 lines
.op
.he COBOL 85 - The new standard Page #
Thσ Commoε Busines≤ OrienteΣ Language¼ COBOL¼ wil∞ celebratσ ì
ì
it≤ 30tΦ anniversar∙ iε Apri∞ oµ nex⌠ year« Thσ ne≈ standarΣ ì
ì
fo≥ COBO╠ compilers¼ hereafte≥ calleΣ COBO╠ 85¼ wa≤ announceΣ iε ì
ì
Septembe≥ oµ 198╡ afte≥ seveε year≤ oµ deliberation« Thi≤ ne≈ ì
ì
versioε oµ thσ world'≤ mos⌠ popula≥ languagσ present≤ man∙ ne≈ ì
ì
improvement≤ whicΦ wil∞ servσ t∩ furthe≥ promotσ thσ efficienc∙ ì
ì
oµ COBOL'≤ datß processinτ capabilities« However¼ nothinτ caε bσ ì
ì
gaineΣ withou⌠ sacrifice« B∙ improvinτ thσ programminτ ì
ì
efficienc∙ thi≤ ne≈ standarΣ haΣ t∩ givσ u≡ completσ upwarΣ ì
ì
compatibility« ì
Iε 1959¼ mos⌠ programminτ task≤ werσ writteε iε machinσ ì
ì
codes« Thi≤ proveΣ t∩ bσ ver∙ timσ consuminτ anΣ costly╗ als∩ ì
ì
fe≈ peoplσ coulΣ understanΣ i⌠ enougΦ t∩ bσ productive« Wheε thσ ì
ì
assembler≤ camσ out¼ i⌠ markeΣ thσ beginninτ oµ highl∙ productivσ ì
ì
programming« However¼ therσ stil∞ existeΣ anothe≥ majo≥ problem║ ì
ì
aε assembl∙ languagσ prograφ i≤ machinσ specific« Programmer≤ ì
ì
haΣ t∩ learε almos⌠ completel∙ differen⌠ language≤ t∩ worδ witΦ ì
ì
differen⌠ computers« Fo≥ thi≤ purpose¼ anΣ ß couplσ oµ othe≥ ì
ì
reasons¼ ß conferencσ wa≤ organized« Thσ goa∞ oµ thi≤ ì
ì
conference¼ helΣ oε thσ campu≤ oµ thσ Universit∙ oµ Pennsylvania¼ ì
ì
wa≤ t∩ recommenΣ t∩ thσ Departmen⌠ oµ Defensσ t∩ havσ ß serie≤ oµ ì
ì
meeting≤ t∩ comσ u≡ witΦ a¼ "commoε busines≤ language.ó ì
Thσ followinτ year¼ thσ Conferencσ oε Datß System≤ ì
ì
Languages¼ CODASYL¼ wa≤ held« Thσ resul⌠ wa≤ COBO╠ 60¼ thσ firs⌠ ìèì
publisheΣ standarΣ oµ COBOL« Thσ goa∞ wa≤ t∩ creatσ ß standarΣ ì
ì
fo≥ COBO╠ compiler≤ tha⌠ woulΣ satisf∙ threσ maiε problems« Thσ ì
ì
firs⌠ wa≤ thσ probleφ oµ complicateΣ programming« COBO╠ provideΣ ì
ì
easσ oµ programming¼ readability¼ anΣ understandinτ t∩ peoplσ iε ì
ì
thσ compute≥ fielΣ b∙ usinτ opeε endeΣ EnglisΦ-typσ statements« ì
ì
Thσ seconΣ probleφ wa≤ tha⌠ oµ upwarΣ compatibility« Iε othe≥ ì
ì
words¼ thσ COBO╠ languagσ provideΣ fo≥ eas∙ modifications¼ anΣ ì
ì
program≤ writteε fo≥ aε earlie≥ compile≥ woulΣ bσ ablσ t∩ bσ ì
ì
compileΣ oε thσ ne≈ compiler« Thσ thirΣ anΣ fina∞ probleφ t∩ bσ ì
ì
solveΣ wa≤ transferability« B∙ publishinτ ß COBO╠ standard¼ thσ ì
ì
author≤ wanteΣ t∩ bσ ablσ t∩ takσ ß prograφ compileΣ oε onσ branΣ ì
ì
oµ compute≥ anΣ bσ ablσ t∩ compilσ anΣ executσ thσ samσ sourcσ ì
ì
codσ oε ß differen⌠ computer« Thus¼ COBO╠ wa≤ officiall∙ born« ì
Thσ UniteΣ State≤ oµ Americß Standard≤ Institute¼ USASI¼ ì
ì
whicΦ becamσ ANSI¼ mergeΣ witΦ CODASY╠ t∩ comσ u≡ witΦ COBO╠ 68« ì
ì
Sincσ theε thσ tw∩ group≤ havσ publisheΣ COBO╠ 7┤ anΣ COBO╠ 85« ì
ì
Thσ Internationa∞ Standard≤ Organization¼ ISO¼ ha≤ accepteΣ AN╙ ì
ì
COBO╠ version≤ a≤ internationa∞ standards« ì
Thσ rapiΣ acceptancσ anΣ continueΣ growtΦ iε thσ usσ oµ ì
ì
COBO╠ haΣ its root≤ iε ß changinτ programminτ environment« A⌠ ì
ì
thσ timσ oµ thσ introductioε oµ COBOL¼ CP╒ timσ wa≤ relativel∙ ì
ì
expensive¼ morσs∩ thaε programme≥ time« A≤ ß resul⌠ oµ this¼ ì
ì
programmer≤ madσ painstakinτ effort≤ t∩ makσ thei≥ program≤ morσ ì
ì
efficient¼ witΦ littlσ concerε fo≥ thσ timσ i⌠ tooδ t∩ accomplisΦ ì
ì
thσ codinτ task« Sincσ tha⌠ time¼ thσ role≤ havσ switched« Now¼ ì
ì
CP╒ timσ i≤ considereΣ cheap¼ anΣ prograφ efficienc∙ ha≤ giveε ì
ìèwa∙ t∩ bette≥ documentatioε anΣ easσ oµ modification« COBO╠ ì
ì
standard≤ havσ continuall∙ adjusteΣ t∩ thi≤ changσ witΦ morσ ì
ì
descriptivσ reserveΣ word≤ anΣ easie≥ t∩ incorporatσ modularity« ì
Thσ difference≤ betweeε COBO╠ 8╡ anΣ COBO╠ 74¼ thσ curren⌠ ì
ì
accepteΣ standard¼ arσ to∩ broaΣ fo≥ completσ coverage« Thi≤ ne≈ ì
ì
versioε bring≤ witΦ i⌠ ne≈ features¼ change≤ iε olΣ features¼ anΣ ì
ì
deletioε oµ obsoletσ features« Thσ scopσ oµ thi≤ pape≥ cover≤ ì
ì
onl∙ thσ majo≥ difference≤ tha⌠ wil∞ makσ programminτ iε COBO╠ ì
ì
morσ efficien⌠ anΣ productive« Thσ topic≤ covereΣ b∙ thi≤ pape≥ ì
ì
cu⌠ acros≤ two circle≤ oµ interest╗ bette≥ readabilit∙ oµ ì
ì
sourcσ code¼ anΣ easie≥ implementatioε oµ structureΣ logic.ì
ì
ì
Simplσ thing≤ tha⌠ makσ readinτ ß COBO╠ prograφ ß littlσ ì
ì
easie≥ makσ u≡ onσ advantagσ thi≤ standarΣ ha≤ t∩ offer« WitΦ ì
ì
thσ fort∙-ninσ ne≈ reserveΣ words¼ tw∩ oµ theφ servσ onl∙ t∩ ì
ì
improvσ sourcσ codσ readability« Wheε programminτ unde≥ COBO╠ 7┤ ì
ì
anΣ describinτ datß item≤ a≤ packeΣ decima∞ o≥ binary¼ thσ USAG┼ ì
ì
clausσ mus⌠ bσ useΣ witΦ COMPUTATIONA╠ o≥ COMPUTATIONA╠-3« ì
ì
However¼ witΦ COBO╠ 8╡ therσ arσ bette≥ way≤ t∩ sho≈ thσ morσ ì
ì
efficien⌠ usσ oµ ß datß item« Thσ ne≈ reserveΣ word≤ arσ ì
ì
PACKE─-DECIMA╠ anΣ BINARY« Now¼ datß item≤ caε bσ declareΣ a≤ ì
ì
follows║ ì
ì
0▒ FIELDS.ì
0▓ DISPLA┘-ITE═ PI├ S9(5⌐ USAG┼ I╙ DISPLAY.ì
0▓ PACKE─-ITE═ PI├ S9(5⌐ USAG┼ I╙ PACKE─-DECIMAL.ì
0▓ BINAR┘-ITEM PI├ S9(5⌐ USAG┼ I╙ BINARY.ì
ì
However¼ eveε thougΦ writinτ ou⌠ BINAR┘ o≥ PACKE─-DECIMA╠ ì
ìècreate≤ bette≥ readabilit∙ fo≥ debugging¼ thσ ne≈ compiler≤ wil∞ ì
ì
stil∞ accep⌠ COM╨ anΣ COM╨-3« Eventuall∙ thσ latte≥ tw∩ reserveΣ ì
ì
word≤ wil∞ bσ eliminateΣ froφ thσ publisheΣ COBO╠ standard« ì
ì
ì
Anothe≥ ne≈ advantagσ i≤ thσ numbe≥ oµ level≤ ß tablσ caε ì
ì
have« Pas⌠ COBO╠ standard≤ havσ haΣ ß limi⌠ oµ threσ level≤ oµ ì
ì
subscripting¼ whilσ COBO╠ 8╡ ha≤ thσ capacit∙ fo≥ aε additiona∞ ì
ì
fou≥ levels« ┴ tablσ ma∙ bσ describeΣ a≤ follows║ ì
ì
0▒ NEW-TABLE-TYPE.ì
0▓ LEVEL-1 OCCUR╙ ╡ TIMES.ì
0│ LEVEL-2 OCCUR╙ ╡ TIMES.ì
0┤ LEVEL-3 OCCUR╙ ╡ TIMES.ì
0╡ LEVEL-4 OCCUR╙ ╡ TIMES. ì
0╢ LEVEL-╡ OCCUR╙ ╡ TIMES.ì
0╖ LEVEL-╢ OCCUR╙ ╡ TIMES.ì
0╕ LEVEL-╖ OCCUR╙ ╡ TIMES.ì
0╣ DATA-ITE═ PI├ 9(5).ì
ì
Wheε ß prograφ i≤ designeΣ t∩ producσ ß repor⌠ tha⌠ wil∞ bσ ì
ì
seeε b∙ uppe≥ leve∞ management¼ whicΦ ma∙ bσ easil∙ impresseΣ b∙ ì
ì
smal∞ details¼ littlσ thing≤ sucΦ a≤ thσ datσ becomσ important« ì
ì
WitΦ COBO╠ 7┤ thσ compile≥ caε returε thσ datσ, anΣ witΦ somσ ì
ì
mino≥ codinτ thσ datσ caε bσ writteε iε ß a forφ managemen⌠ ì
ì
wil∞ like« Unde≥ COBO╠ 74¼ thσ datσ caε bσ obtaineΣ b∙ wa∙ oµ ì
ì
thσ MOV┼ statemen⌠ anΣ coulΣ bσ printeΣ iε thσ forφ 09/15/88« Iµ ì
ì
ß montΦ tablσ i≤ included¼ thσ datσ coulΣ bσ pu⌠ iε thσ forφ oµ ì
ì
Septembe≥ 15¼ 1988« Thi≤ forφ look≤ gooΣ t∩ management¼ bu⌠ ì
ì
COBO╠ 8╡ add≤ ß ne≈ leve∞ t∩ thσ aesthetic≤ oµ thσ date¼ thσ DA┘-ìèì
O╞-WEE╦ reserveΣ word« Wheε DA┘-O╞-WEE╦ i≤ useΣ witΦ thσ ACCEP╘ ì
ì
statement¼ thσ compile≥ return≤ ß onσ digi⌠ characte≥ tha⌠ stand≤ ì
ì
for║ ì
▒ ¡ Monday
▓ ¡ Tuesday
│ ¡ Wednesday
┤ ¡ Thursday
╡ ¡ Friday
╢ ¡ Saturday
╖ ¡ Sunday
Thi≤ digi⌠ coulΣ bσ useΣ a≤ ß subscrip⌠ t∩ acces≤ ß da∙ table« ì
ì
WORKING-STORAG┼ SECTION.
0▒ DAYS-TABLE
02 DAYS-DEFINED.
03 PI├ X(9⌐ VALU┼ I╙ "MONDA┘ ".
03 PI├ X(9) VALU┼ I╙ "TUESDA┘ ".
03 PI├ X(9) VALU┼ I╙ "WEDNESDAY".
03 PI├ X(9⌐ VALU┼ I╙ "THURSDA┘ ".
03 PI├ X(9⌐ VALU┼ I╙ "FRIDA┘ ".
03 PI├ X(9⌐ VALU┼ I╙ "SATURDA┘ ".
03 PI├ X(9⌐ VALU┼ I╙ "SUNDA┘ ".
0▓ DAY-NAM┼-TABLE REDEFINE╙ DAYS-DEFINED.
0│ DAY-NAM┼ PI├ X(9⌐ OCCUR╙ ╖ TIMES.
77 DAY-CODE.
.
.
ACCEP╘ DAY-COD┼ FRO═ DAY-OF-WEEK.
DISPLA┘ "GOO─ MORNING¼ TODA┘ I╙ " DA┘-NAME(DA┘-CODE).ì
ì
Aε experienceΣ COBO╠ 7┤ programme≥ woulΣ immediatel∙ noticσ ì
ì
thσ absencσ oµ thσ FILLE╥ reserveΣ word« Anothe≥ onσ oµ COBO╠ ì
ì
85'≤ improvement≤ ove≥ COBO╠ 7┤ i≤ it≤ morσ versatilσ usσ oµ thσ ì
ì
FILLE╥ ke∙ word« Iε previou≤ version≤ FILLE╥ coulΣ no⌠ bσ useΣ ì
ìèa⌠ thσ grou≡ level« Als∩ includeΣ iε FILLER'≤ ne≈ rolσ i≤ ì
ì
optionability« FILLE╥ i≤ aε optiona∞ word¼ anΣ iµ i⌠ i≤ omitteΣ ì
ì
thσ compile≥ assume≤ it≤ presence« Comparσ thσ followinτ ì
ì
examples« ì
ì
COBO╠ 7┤ : COBO╠ 8╡ :ì
0▒ HEADER-LINE 0▒ HEADER-LINE.ì
0▓ FILLE╥ PI├ XXXX. 0▓ FILLER.ì
0▓ FILLE╥ PI├ XXXX« 0│ PI├ XXXX.ì
0▓ TOTALS PI├ 9999. 0│ PI├ XXXX.ì
0▓ FILLE╥ PI├ XXXX« 0│ TOTAL╙ PI├ 9999.ì
0│ PI├ XXXX.ì
ì
Thi≤ ne≈ featurσ add≤ bette≥ readabilit∙ fo≥ thσ programmer≤, ì
ì
anΣ i⌠ eliminate≤ thσ neeΣ t∩ typσ FILLE╥ ove≥ anΣ ove≥ agaiε fo≥ ì
ì
ß prograφ witΦ man∙ header≤ anΣ detai∞ lines« Sincσ thσ worΣ ì
ì
FILLE╥ wil∞ bσ absen⌠ froφ thσ fielΣ definitioε, thσ referenceablσ ì
ì
element≤ wil∞ bσ easie≥ t∩ recognize« ì
ì
A≤ ever∙ programme≥ knows¼ wheε dealinτ witΦ ß prograφ tha⌠ ì
ì
make≤ usσ oµ table≤ oµ accumulators¼ i⌠ i≤ necessar∙ t∩ usσ aε ì
ì
ou⌠-oµ-flo≈ loo≡ jus⌠ t∩ initializσ thσ field≤ t∩ zero« COBO╠ 8╡ ì
ì
ha≤ manageΣ t∩ overcomσ thi≤ inconvenience« WitΦ thi≤ ne≈ ì
ì
standard¼ thσ VALU┼ clausσ caε bσ placeΣ oε element≤ unde≥ aε ì
ì
OCCUR╙ clause« Thi≤ provide≤ ß simplσ methoΣ t∩ initializσ ß ì
ì
tablσ oµ value≤ t∩ an∙ numbe≥, a≤ showε here║ ì
ì
.paè 0▒.ì
0▓ EMPLOYEE-WAGE-TOTALS OCCUR╙ 10░ TIMES.ì
0│ EMPLOYEE-WAGES-TO-DATE PI├ S9(8)V99ì
VALU┼ I╙ 0.ì
ì
ì
Thσ feature≤ describeΣ s∩ fa≥ havσ al∞ resideΣ withiε thσ ì
ì
circlσ oµ bette≥ readability« Thesσ smal∞ change≤ wil∞ makσ ì
ì
prograφ maintenancσ aε easie≥ task¼ anΣ iε thσ lonτ run¼ thi≤ ì
ì
wil∞ savσ valuablσ programminτ time« Therσ i≤ stil∞ anothe≥ areß ì
ì
t∩ cover: bette≥ implementatioε oµ structureΣ logic« COBO╠ 8╡ ì
ì
bring≤ witΦ i⌠ tw∩ ne≈ powerfu∞ feature≤ neve≥ beforσ offereΣ b∙ ì
ì
COBOL« Thesσ feature≤ arσ nesteΣ program≤ anΣ instreaφ loops« ì
ì
Thσ firs⌠ feature¼ nesteΣ programs¼ i≤ ver∙ eas∙ t∩ ì
ì
implemen⌠ anΣ provide≤ ß wonderfu∞ wa∙ t∩ usσ differen⌠ module≤ ì
ì
createΣ b∙ member≤ oµ ß programminτ team« Thσ forma⌠ i≤ ì
ì
conceptually¼ anΣ actually¼ rathe≥ simple« Thσ ideß oµ nestedì
ì
program≤ i≤ illustrateΣ here║ ì
ì
┌───────────────────────────────────────────────────────┐ì
¢│ Maiε Prograφ │
¢│ ┌───────────────────────────────────────────────¢┐ │
¢│ ¢│ Inne≥ Prograφ ╔ ¢│ │ì
¢│ ¢│ ┌──────────────────────────────────────¢┐ ¢│ │ì
¢│ ¢│ ¢│ Inne≥ Prograφ Iß ¢│ ¢│ │
¢│ ¢│ └──────────────────────────────────────¢┘ ¢│ │ì
¢│ ¢│ ┌──────────────────────────────────────¢┐ ¢│ │ì
¢│ ¢│ ¢│ Inne≥ Prograφ IΓ ¢│ ¢│ │ì
¢│ ¢│ └──────────────────────────────────────¢┘ ¢│ │
¢│ └───────────────────────────────────────────────¢┘ │
¢│ ┌───────────────────────────────────────────────¢┐ │ì
¢│ ¢│ Inne≥ Prograφ I╔ ¢│ │
¢│ └───────────────────────────────────────────────¢┘ │ì
└───────────────────────────────────────────────────────┘
ì
è Thi≤ conceptua∞ figurσ caε easil∙ bσ transformeΣ int∩ ß ì
ì
COBO╠ skeletoε a≤ follows:ì
IDENTIFICATIO╬ DIVISION. ───────────────┐ì
PROGRA═ ID« MAI╬-PROGRAM. │ì
│
. │ì
. │
. │ì
│
IDENTIFICATIO╬ DIVISION. ──────────┐ │ì
PROGRA═ ID« INNE╥-PROGRAM-I. │ │ì
│ │
. │ │ì
. │ │
. │ │ì
│ │
IDENTIFICATIO╬ DIVISION« ─────┐ │ │ì
PROGRA═ ID« INNER-PROGRAM-IA« │ │ │ì
│ │ │
« │ │ │ì
« │ │ │
« │ │ │ì
│ │ │
EN─ PROGRA═ INNER-PROGRAM-IA« ─────┘ │ │ì
│ │ì
│ │
IDENTIFICATIO╬ DIVISION« ─────┐ │ │ì
PROGRA═ ID« INNER-PROGRAM-IB« │ │ │ì
│ │ │
« │ │ │ì
« │ │ │
« │ │ │ì
│ │ │
EN─ PROGRA═ INNER-PROGRAM-IB« ─────┘ │ │ì
│ │
│ │ì
EN─ PROGRA═ INNER-PROGRAM-I« ──────────┘ │ì
│
│
IDENTIFICATIO╬ DIVISION« ──────────¢┐ ¢│ì
PROGRA═ ID« INNE╥-PROGRA═-II« ¢│ ¢│ ì
¢│ │ì
. │ │
. │ │
. │ │ì
│ │
EN─ PROGRA═ INNER-PROGRAM-II. ──────────┘ │ì
│
│ì
EN─ PROGRA═ MAIN-PROGRAM. ───────────────┘ì
ì
è Thσ nex⌠ ne≈ featurσ oµ COBO╠ 8╡ i≤ probabl∙ thσ singlσ ì
ì
greates⌠ improvemen⌠ ove≥ thσ previou≤ standards« Thi≤ additioε ì
ì
i≤ thσ ne≈ anΣ improveΣ function≤ oµ thσ PERFOR═ verb« Iε pas⌠ ì
ì
COBO╠ standards¼ therσ wa≤ n∩ wa∙ t∩ proces≤ loop≤ instream« Thσ ì
ì
flo≈ oµ contro∞ caε bσ illustrateΣ a≤ follows:ì
ì
───────────────────ì
Maiε Segment
───────────────────ì
│
└────────────────────────┐ì
│
┌─────────────────────┐ │ì
¢│ ¢│ │
│ ─────────────────── │ì
│ Nex⌠ Segment │
│ ──────────────────¢─ │
│ │
│ ┌───────────────────────┘
│ │
│ ────────────────────
│ Stmt≤« iε Loop
│ ────────────────────
│ │
└──────────────────────┘ì
ì
However¼ witΦ COBO╠ 8╡ thσ flo≈ oµ contro∞ caε be instream:ì
ì
────────────────────
Maiε Segment
────────────────────
│
────────────────────
Stmt≤. iε Loop
────────────────────
│
────────────────────
Nex⌠ Segment
────────────────────
ì
Thi≤ differencσ caε bσ seeε clearl∙ iε thσ illustrations« ì
ì
Al∞ oµ thσ detail≤ oµ thσ ne≈ PERFOR═ statemen⌠ d∩ no⌠ neeΣ t∩ bσ ì
ì
discusseΣ a⌠ thi≤ time« Thσ majo≥ aspect≤ oµ thσ ne≈ PERFOR═ ìèì
verΓ caε bσ seeε witΦ thσ followinτ tw∩ examples« ì
ì
ì
PERFOR═ ╡ TIMESì
DISPLA┘ ITEM(SUBSCRIPT)ì
SUBSCRIP╘ ╜ SUBSCRIP╘ ½ 1ì
END-PERFORM.ì
ì
PERFOR═ UNTI╠ EO╞-HA╙-OCCURRE─ ì
AD─ NUMBE╥ T╧ SUB-TOTALì
REA─ IN-FIL┼ A╘ EN─ MOV┼ 'Yº T╧ EOFì
END-PERFORM.ì
ì
Thσ las⌠ tw∩ feature≤ fil∞ u≡ thσ empt∙ spacσ iε thσ realφ ì
ì
oµ implementinτ structureΣ logic« Fo≥ smal∞ routine≤ thi≤ wil∞ ì
ì
improvσ efficiency¼ anΣ readability¼ anΣ i⌠ wil∞ conforφ t∩ ì
ì
structureΣ logic« Branchinτ t∩ anothe≥ paragrapΦ caε bσ ì
ì
eliminated¼ s∩ visuall∙ thσ COBO╠ sourcσ code'≤ flo≈ oµ executioε ì
ì
wil∞ bσ easie≥ t∩ follo≈, resultinτ iε quicke≥ prograφ ì
ì
maintenance« ì
COBO╠ 8╡ bring≤ witΦ i⌠ thσ alread∙ mentioneΣ feature≤ anΣ ì
ì
man∙ others¼ bu⌠ i⌠ als∩ ha≤ eliminateΣ somσ oµ thσ olΣ features« ì
ì
Thσ lis⌠ oµ thσ "obsoleteó feature≤ i≤ to∩ lonτ t∩ lis⌠ iε its ì
ì
entirety¼ ye⌠ therσ i≤ ß gooΣ examplσ oµ thσ theor∙ behinΣ this« ì
ì
Iε thσ IDENTIFICATIO╬ DIVISIO╬ therσ arσ man∙ paragraph≤ tha⌠ ì
ì
servσ onl∙ a≤ documentation« Thσ reserveΣ words╗ AUTHOR¼ ì
ì
INSTALLATION¼ DAT┼-WRITTEN¼ DAT┼-COMPILED¼ anΣ SECURIT┘ wil∞ n∩ ì
ì
longe≥ bσ accepteΣ b∙ COBO╠ compilers« Thσ COBO╠ 8╡ authorsº ì
ìètheor∙ behinΣ thi≤ come≤ froφ compile≥ timσ efficiency« Thσ ì
ì
compile≥ coulΣ savσ timσ b∙ onl∙ havinτ t∩ proces≤ thσ necessar∙ ì
ì
paragraphs« Iµ programmer≤ wan⌠ thσ previousl∙ mentioneΣ ì
ì
documentatioε iε thei≥ prograφ, the∙ caε adΣ ß commen⌠ card« ì
ì
Othe≥ streamlininτ oµ thσ compile≥ ha≤ takeε placσ iε thσ ne≈ ì
ì
COBO╠ standard« ì
ì
WitΦ al∞ oµ thσ ne≈ features¼ change≤ iε olΣ features¼ anΣ ì
ì
thσ cancelinτ oµ obsoletσ features¼ convertinτ program≤ writteε ì
ì
fo≥ COBO╠ 7┤ t∩ COBO╠ 8╡ i≤ no⌠ aε eas∙ tasδ, iµ i⌠ caε bσ donσ a⌠ ì
ì
all« Onσ oµ thσ forementioneΣ purpose≤ oµ COBO╠ wa≤ upwarΣ ì
ì
compatibility« Thi≤ basiπ fundamenta∞ oµ thσ COBO╠ languagσ ha≤ ì
ì
beeε pu⌠ oε thσ roaΣ t∩ oblivion« Thσ convertinτ oµ presen⌠ ì
ì
program≤ t∩ COBO╠ 8╡ woulΣ takσ man∙ expensivσ programmer≤ lonτ ì
ì
labo≥ hours« ì
ì
Mos⌠ firm≤ wil∞ no⌠ takσ thσ timσ t∩ conver⌠ thei≥ olΣ ì
ì
programs╗ thu≤ the∙ arσ faceΣ witΦ ß tougΦ decision« Thσ choice≤ ì
ì
fo≥ eacΦ compan∙ arσ (1⌐ kee≡ programminτ witΦ ß COBO╠ 7┤ ì
ì
compile≥ anΣ ignorσ thσ ne≈ standard¼ (2⌐ kee≡ COBO╠ 7┤ anΣ als∩ ì
ì
star⌠ ne≈ program≤ unde≥ COBO╠ 85¼ o≥ (3⌐ conver⌠ COBO╠ 7┤ t∩ ì
ì
COBO╠ 8╡ anΣ codσ al∞ ne≈ program≤ fo≥ COBO╠ 85« Thi≤ decisioε ì
ì
i≤ onσ tha⌠ wil∞ bσ cominτ u≡ ver∙ shortl∙ iε al∞ COBO╠ ì
ì
programminτ environments« ì
Thσ problem≤ oµ convertinτ sourcσ codσ t∩ COBO╠ 8╡ froφ ì
ì
COBO╠ 7┤ appears t∩ havσ thσ samσ difficult∙ a≤ convertinτ PL/╔ t∩ ì
ì
an∙ versioε oµ COBOL« Thi≤ similarit∙ throws ß ne≈ ligh⌠ oε thσ ì
ì
codinτ decision« Firm≤ ma∙ wisΦ t∩ trea⌠ COBO╠ 8╡ a≤ ß ìèì
completel∙ separatσ languagσ froφ COBO╠ 7┤ anΣ le⌠ eacΦ ì
ì
peacefull∙ coexis⌠ iε thσ programminτ environment« A⌠ thσ ì
ì
presen⌠ time¼ thi≤ decisioε appear≤ t∩ bσ thσ mos⌠ reasonablσ ì
ì
one« ì
ì
Unlikσ previou≤ version≤ oµ COBOL¼ COBO╠ 8╡ wil∞ no⌠ bσ ì
ì
rapidl∙ implementeΣ int∩ mainstreaφ programming« I⌠ ma∙ takσ ì
ì
wel∞ int∩ thσ 1990'≤ beforσ thσ upgradσ i≤ finall∙ madσ t∩ bσ aε ì
ì
efficien⌠ alternativσ t∩ programminτ unde≥ COBO╠ 74« Thσ slo≈ ì
ì
changσ ma∙ causσ COBO╠ t∩ losσ somσ oµ it≤ popularit∙ t∩ newer¼ ì
ì
faster¼ anΣ morσ powerfu∞ languages« Onl∙ timσ wil∞ tell.ì
ì
Fo≥ now¼ programminτ iε COBO╠ wil∞ remaiε almos⌠ entirel∙ ì
ì
unde≥ thσ 197┤ standard« Thσ futurσ hold≤ promisinτ new≤ fo≥ ì
ì
COBO╠ programmer≤ iε thσ wa∙ oµ ne≈ feature≤ anΣ improvement≤ oµ ì
ì
olΣ features« Thσ ne≈ standarΣ oµ COBO╠ programminτ exists¼ ye⌠ ì
ì
i⌠ wil∞ bσ somσ timσ beforσ thσ accepteΣ standarΣ become≤ COBO╠ ì
ì
85« Eveε thougΦ COBO╠ 8╡ bring≤ witΦ i⌠ instreaφ logic¼ bette≥ ì
ì
defineΣ verbs¼ anΣ bette≥ documentation¼ COBO╠ 7┤ stil∞ stand≤ ì
ì
alonσ a⌠ thσ to≡ oµ thσ programminτ hill.ì
.paè.op
.he
.ul
ì
ì
Work≤ Consulted
Brown¼ P« R« anΣ Gwilliφ V.« User'≤ Guidσ t∩ COBO╠ 85« HalsteΣ ì
Press║ Ne≈ York¼ Ne≈ York« 436p« 1985.
Garfunkel¼ Jerome« Thσ COBO╠ 8╡ Examplσ Book« Johε Wile∙ ª Sons:
Ne≈ York¼ Ne≈ York« 322p« 1987.
I.B.M« IB═ V╙ COBO╠ fo≥ OS/VS¼ releasσ 2« Internationa∞ ì
Busines≤ Machines║ Saε Jose¼ California« 544p« 1986.
Nirmal¼ Barr∙ K.« Programminτ Standard≤ anΣ Guidelines║ COBO╠ Edition.
Prentice-Hall« 226p« 1987.