{"id":7994,"date":"2026-09-06T15:30:05","date_gmt":"2026-09-06T20:30:05","guid":{"rendered":"https:\/\/www.logikalsolutions.com\/wordpress\/?p=7994"},"modified":"2026-09-06T15:30:06","modified_gmt":"2026-09-06T20:30:06","slug":"cobol","status":"publish","type":"post","link":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/","title":{"rendered":"COBOL &#8211; Because I Can &#8211; Pt 1"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">COBOL was my second home. VAX BASIC was the first. I lived there for many years. If you wait for enough people to die off, your old skills become really valuable!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Thankfully <a href=\"https:\/\/decuserve.com\/\">DECUS maintains URLs for Eisner<\/a>. I believe it is actually hosted by VSI now. Any dues paying Encompass member can get themselves an account on Eisner. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">My ancient copy of Reflections was from like, Windows 98 days. It installed, but was useless. SSH has changed dramatically. I could have moved over to one of my Linux machines and dusted off <a href=\"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/xterm-and-vt-emulation\/\">my old Xterm configuration<\/a>, but wanted to see what was out there. I remember when KEAterm and Reflections were something like $400 a seat! Found <a href=\"https:\/\/www.emtec.com\/zoc\/index.html\">ZOC9<\/a> for $80. I&#8217;ve <em>almost<\/em> got it configured the way I like. I seem to remember Reflections and KEAterm had a checkbox or something for &#8220;leave the cursor keys alone.&#8221;<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"972\" height=\"927\" src=\"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cursor-keys-001.jpg\" alt=\"\" class=\"wp-image-7995\" srcset=\"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cursor-keys-001.jpg 972w, https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cursor-keys-001-300x286.jpg 300w, https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cursor-keys-001-768x732.jpg 768w\" sizes=\"(max-width: 972px) 100vw, 972px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Delete, End, and Home used to work just like on a PC. Delete would delete whatever was at the cursor, even on the command line. I haven&#8217;t replicated the command line capabilities yet, but things work well in LSE.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Triangles<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I started researching what has changed in the world of COBOL and found this!<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"850\" height=\"179\" src=\"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cobol-column-center-001.png\" alt=\"\" class=\"wp-image-7996\" srcset=\"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cobol-column-center-001.png 850w, https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cobol-column-center-001-300x63.png 300w, https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/cobol-column-center-001-765x161.png 765w\" sizes=\"(max-width: 850px) 100vw, 850px\" \/><figcaption class=\"wp-element-caption\"><a href=\"https:\/\/www.spc-systems.com\/tutorial\/tutorial_cobrwr1.htm\">here<\/a><\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Yippee! I&#8217;m gonna do Triangles and use REPORT WRITER. Then reality screwed me from afar. Version of COBOL on Eisner (and most likely where I will contract) didn&#8217;t have that. The difficult part of the Triangles problem is dealing with the fact COBOL doesn&#8217;t have dynamic strings. COLUMN CENTER would make the problem go away.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"750\" height=\"732\" src=\"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/triangles-001.png\" alt=\"\" class=\"wp-image-7997\" srcset=\"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/triangles-001.png 750w, https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2026\/09\/triangles-001-300x293.png 300w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Most of you kids will think that looks terrible. You kids should be warned about thinking. This is a <em>character cell terminal<\/em>, not a word processor with dynamic fonts nor is there really a graphics card involved. Odd count stars will stick out on the left if you don&#8217;t slush the remainder or right if you do. You just can&#8217;t center 3 under 4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Code<\/h2>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-Deja-Vu-Mono.ttf\" style=\"font-size:.875rem;font-family:Code-Pro-Deja-Vu-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#b392f0;--cbp-line-number-width:calc(3 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1f1f1f\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#b392f0;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>IDENTIFICATION DIVISION.\n\nPROGRAM-ID.     TRIANGLE_REPORT.\nAUTHOR.         ROLAND HUGHES.\nDATE-WRITTEN.   2026-09-04.\nDATE-COMPILED.  TODAY.\n\nENVIRONMENT DIVISION.\n\nINPUT-OUTPUT SECTION.\n\nFILE-CONTROL.\n\nDATA DIVISION.\n\nFILE SECTION.\n\nWORKING-STORAGE SECTION.\n01  STUFF.\n    05 TODAYS-DATE.\n       10 TODAY_YYYY         PIC X(4).\n       10 TODAY_MM           PIC X(2).\n       10 TODAY_DD           PIC X(2).\n\n    05 TODAYS-DATE-FORMATTED.\n       10 FMT_MM             PIC Z9.\n       10 FILLER             PIC X VALUE '\/'.\n       10 FMT_DD             PIC 99.\n       10 FILLER             PIC X VALUE '\/'.\n       10 FMT_YYYY           PIC 9(4).\n\n    05 STAR-COUNT           PIC 9(2) VALUE 36.\n    05 A-COUNT              PIC 9(2).\n    05 D-COUNT              PIC 9(2).\n    05 START-POS            PIC 9(2).\n\n01  PAGE-HEADING.\n    05 FILLER               PIC X(32) VALUE SPACES.\n    05 FILLER               PIC X(16) VALUE IS 'Classic Stars'.\n    05 FILLER               PIC X(22) VALUE SPACES.\n    05 FORMATTED-DATE       PIC X(10).\n\n01  DETAIL-HEADING.\n    05 FILLER               PIC X(33) VALUE SPACES.\n    05 FILLER               PIC X(10) VALUE IS 'Star Count'.\n    05 FILLER               PIC X(7) VALUE SPACES.\n    05 DISPLAY-COUNT        PIC Z9.\n\n01  DTL-LINE.\n    05 D-STRING             PIC X(40).\n    05 A-STRING             PIC X(40).\n\nPROCEDURE DIVISION.\n\nA000-MAIN.\n    PERFORM B000-HSK.\n\n    PERFORM B100-PRINT-TRIANGLES\n        VARYING D-COUNT FROM STAR-COUNT BY -1\n        UNTIL D-COUNT IS LESS THAN 1.\n\n    STOP RUN.\n\n*****\n*   Paragraph to initialize our data and files.\n*****\nB000-HSK.\n    ACCEPT TODAYS-DATE FROM DATE YYYYMMDD.\n\n    MOVE TODAY_YYYY TO FMT_YYYY.\n    MOVE TODAY_DD   TO FMT_DD.\n    MOVE TODAY_MM   TO FMT_MM.\n\n    MOVE TODAYS-DATE-FORMATTED TO FORMATTED-DATE.\n    MOVE STAR-COUNT TO DISPLAY-COUNT.\n\n    DISPLAY ' '.\n    DISPLAY PAGE-HEADING.\n    DISPLAY ' '.\n\n    DISPLAY DETAIL-HEADING.\n    DISPLAY ' '.\n\n*****\n*   Actually write the report\n*   Too bad the REPORT WRITER doesn't have COLUMN CENTER like\n*   modern COBOL.\n*****\nB100-PRINT-TRIANGLES.\n    ADD 1 TO A-COUNT.\n    MOVE SPACES TO DTL-LINE.\n\n    COMPUTE START-POS = 20 - (D-COUNT \/ 2).\n    MOVE ALL '*' TO D-STRING(START-POS:D-COUNT).\n\n    COMPUTE START-POS = 20 - (A-COUNT \/ 2).\n    MOVE ALL '*' TO A-STRING(START-POS:A-COUNT).\n\n    DISPLAY DTL-LINE.\n\nEND PROGRAM TRIANGLE_REPORT.\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki min-dark\" style=\"background-color: #1f1f1f\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #F97583\">IDENTIFICATION DIVISION<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">PROGRAM-ID<\/span><span style=\"color: #B392F0\">.     TRIANGLE_REPORT.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">AUTHOR.<\/span><span style=\"color: #6B737C\">         ROLAND HUGHES.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">DATE-WRITTEN.<\/span><span style=\"color: #6B737C\">   2026-09-04.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">DATE-COMPILED.<\/span><span style=\"color: #6B737C\">  TODAY.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">ENVIRONMENT DIVISION<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">INPUT-OUTPUT SECTION<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">FILE-CONTROL<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">DATA DIVISION<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">FILE SECTION<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">WORKING-STORAGE SECTION<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F8\">01<\/span><span style=\"color: #B392F0\">  STUFF.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> TODAYS-DATE.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> TODAY_YYYY         <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">4<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> TODAY_MM           <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> TODAY_DD           <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> TODAYS-DATE-FORMATTED.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> FMT_MM             <\/span><span style=\"color: #F97583\">PIC Z9.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">             <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39;\/&#39;<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> FMT_DD             <\/span><span style=\"color: #F97583\">PIC 99.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">             <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39;\/&#39;<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">       <\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\"> FMT_YYYY           <\/span><span style=\"color: #F97583\">PIC 9<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">4<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> STAR-COUNT           <\/span><span style=\"color: #F97583\">PIC 9<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">) <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">36<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> A-COUNT              <\/span><span style=\"color: #F97583\">PIC 9<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> D-COUNT              <\/span><span style=\"color: #F97583\">PIC 9<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> START-POS            <\/span><span style=\"color: #F97583\">PIC 9<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F8\">01<\/span><span style=\"color: #B392F0\">  PAGE-HEADING.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">               <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">32<\/span><span style=\"color: #B392F0\">) <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #79B8FF\">SPACES<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">               <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">16<\/span><span style=\"color: #B392F0\">) <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">IS<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39;Classic Stars&#39;<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">               <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">22<\/span><span style=\"color: #B392F0\">) <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #79B8FF\">SPACES<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> FORMATTED-DATE       <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F8\">01<\/span><span style=\"color: #B392F0\">  DETAIL-HEADING.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">               <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">33<\/span><span style=\"color: #B392F0\">) <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #79B8FF\">SPACES<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">               <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">10<\/span><span style=\"color: #B392F0\">) <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">IS<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39;Star Count&#39;<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">FILLER<\/span><span style=\"color: #B392F0\">               <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">7<\/span><span style=\"color: #B392F0\">) <\/span><span style=\"color: #F97583\">VALUE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #79B8FF\">SPACES<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> DISPLAY-COUNT        <\/span><span style=\"color: #F97583\">PIC Z9.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F8F8F8\">01<\/span><span style=\"color: #B392F0\">  DTL-LINE.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> D-STRING             <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">40<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F8F8F8\">05<\/span><span style=\"color: #B392F0\"> A-STRING             <\/span><span style=\"color: #F97583\">PIC X<\/span><span style=\"color: #B392F0\">(<\/span><span style=\"color: #F8F8F8\">40<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">PROCEDURE DIVISION<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">A000-MAIN.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">PERFORM<\/span><span style=\"color: #B392F0\"> B000-HSK.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">PERFORM<\/span><span style=\"color: #B392F0\"> B100-PRINT-TRIANGLES<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">        <\/span><span style=\"color: #F97583\">VARYING<\/span><span style=\"color: #B392F0\"> D-COUNT <\/span><span style=\"color: #F97583\">FROM<\/span><span style=\"color: #B392F0\"> STAR-COUNT <\/span><span style=\"color: #F97583\">BY<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">-1<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">        <\/span><span style=\"color: #F97583\">UNTIL<\/span><span style=\"color: #B392F0\"> D-COUNT <\/span><span style=\"color: #F97583\">IS<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">LESS THAN<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">1<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">STOP RUN<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*****<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*   Paragraph to initialize our data and files.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*****<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">B000-HSK.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">ACCEPT<\/span><span style=\"color: #B392F0\"> TODAYS-DATE <\/span><span style=\"color: #F97583\">FROM DATE YYYYMMDD<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> TODAY_YYYY <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> FMT_YYYY.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> TODAY_DD   <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> FMT_DD.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> TODAY_MM   <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> FMT_MM.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> TODAYS-DATE-FORMATTED <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> FORMATTED-DATE.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> STAR-COUNT <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> DISPLAY-COUNT.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">DISPLAY<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39; &#39;<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">DISPLAY<\/span><span style=\"color: #B392F0\"> PAGE-HEADING.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">DISPLAY<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39; &#39;<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">DISPLAY<\/span><span style=\"color: #B392F0\"> DETAIL-HEADING.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">DISPLAY<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39; &#39;<\/span><span style=\"color: #B392F0\">.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*****<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*   Actually write the report<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*   Too bad the REPORT WRITER doesn&#39;t have COLUMN CENTER like<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*   modern COBOL.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6B737C\">*****<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">B100-PRINT-TRIANGLES.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">ADD<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">1<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> A-COUNT.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #79B8FF\">SPACES<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> DTL-LINE.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">COMPUTE<\/span><span style=\"color: #B392F0\"> START-POS <\/span><span style=\"color: #F97583\">=<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">20<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">-<\/span><span style=\"color: #B392F0\"> (D-COUNT <\/span><span style=\"color: #F97583\">\/<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">ALL<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39;*&#39;<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> D-STRING(START-POS:D-COUNT).<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">COMPUTE<\/span><span style=\"color: #B392F0\"> START-POS <\/span><span style=\"color: #F97583\">=<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">20<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">-<\/span><span style=\"color: #B392F0\"> (A-COUNT <\/span><span style=\"color: #F97583\">\/<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">MOVE<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">ALL<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #FFAB70\">&#39;*&#39;<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">TO<\/span><span style=\"color: #B392F0\"> A-STRING(START-POS:A-COUNT).<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #B392F0\">    <\/span><span style=\"color: #F97583\">DISPLAY<\/span><span style=\"color: #B392F0\"> DTL-LINE.<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">END PROGRAM<\/span><span style=\"color: #B392F0\"> TRIANGLE_REPORT.<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Instead of COMPUTE, to slush on the right you would need something like<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-Deja-Vu-Mono.ttf\" style=\"font-size:.875rem;font-family:Code-Pro-Deja-Vu-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#b392f0;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#1f1f1f\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#b392f0;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>DIVIDE D-COUNT by 2 GIVING QUOTIENT-VALUE REMAINDER SLUSH.\nCOMPUTE START-POS = 20 - QUOTIENT-VALUE + SLUSH.<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki min-dark\" style=\"background-color: #1f1f1f\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #F97583\">DIVIDE<\/span><span style=\"color: #B392F0\"> D-COUNT <\/span><span style=\"color: #F97583\">by<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">2<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">GIVING<\/span><span style=\"color: #B392F0\"> QUOTIENT-VALUE <\/span><span style=\"color: #F97583\">REMAINDER<\/span><span style=\"color: #B392F0\"> SLUSH.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F97583\">COMPUTE<\/span><span style=\"color: #B392F0\"> START-POS <\/span><span style=\"color: #F97583\">=<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F8F8F8\">20<\/span><span style=\"color: #B392F0\"> <\/span><span style=\"color: #F97583\">-<\/span><span style=\"color: #B392F0\"> QUOTIENT-VALUE <\/span><span style=\"color: #F97583\">+<\/span><span style=\"color: #B392F0\"> SLUSH.<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Odd numbers would have a remainder of 1, otherwise SLUSH would be zero. For some reason people tend to not notice things sticking off the right side.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>COBOL was my second home. VAX BASIC was the first. I lived there for many years. If you wait for enough people to die off, your old skills become really&#8230;<\/p>\n","protected":false},"author":2,"featured_media":4103,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1309,3],"tags":[438,9],"class_list":["post-7994","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-experience","category-information-technology","tag-cobol","tag-openvms","entry-item"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>COBOL - Because I Can - Pt 1 &#8211; Logikal Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"COBOL - Because I Can - Pt 1 &#8211; Logikal Blog\" \/>\n<meta property=\"og:description\" content=\"COBOL was my second home. VAX BASIC was the first. I lived there for many years. If you wait for enough people to die off, your old skills become really...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/\" \/>\n<meta property=\"og:site_name\" content=\"Logikal Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-06T20:30:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-06T20:30:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2020\/11\/vt510.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"200\" \/>\n\t<meta property=\"og:image:height\" content=\"183\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"seasoned_geek\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"seasoned_geek\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/\"},\"author\":{\"name\":\"seasoned_geek\",\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/c077f770ade13de7faaf616c3eac6842\"},\"headline\":\"COBOL &#8211; Because I Can &#8211; Pt 1\",\"datePublished\":\"2026-09-06T20:30:05+00:00\",\"dateModified\":\"2026-09-06T20:30:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/\"},\"wordCount\":371,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/c077f770ade13de7faaf616c3eac6842\"},\"image\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/11\\\/vt510.jpeg\",\"keywords\":[\"COBOL\",\"OpenVMS\"],\"articleSection\":[\"Experience\",\"Information Technology\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/\",\"url\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/\",\"name\":\"COBOL - Because I Can - Pt 1 &#8211; Logikal Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/11\\\/vt510.jpeg\",\"datePublished\":\"2026-09-06T20:30:05+00:00\",\"dateModified\":\"2026-09-06T20:30:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/11\\\/vt510.jpeg\",\"contentUrl\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2020\\\/11\\\/vt510.jpeg\",\"width\":200,\"height\":183},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/information-technology\\\/cobol\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"COBOL &#8211; Because I Can &#8211; Pt 1\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/\",\"name\":\"Logikal Blog\",\"description\":\"For people having an attention span longer than a tweet\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/c077f770ade13de7faaf616c3eac6842\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/#\\\/schema\\\/person\\\/c077f770ade13de7faaf616c3eac6842\",\"name\":\"seasoned_geek\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r\",\"caption\":\"seasoned_geek\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r\"},\"description\":\"Roland Hughes started his IT career in the early 1980s. He quickly became a consultant and president of Logikal Solutions, a software consulting firm specializing in OpenVMS application and C++\\\/Qt touchscreen\\\/embedded Linux development. Early in his career he became involved in what is now called cross platform development. Given the dearth of useful books on the subject he ventured into the world of professional author in 1995 writing the first of the \\\"Zinc It!\\\" book series for John Gordon Burke Publisher, Inc. A decade later he released a massive (nearly 800 pages) tome \\\"The Minimum You Need to Know to Be an OpenVMS Application Developer\\\" which tried to encapsulate the essential skills gained over what was nearly a 20 year career at that point. From there \\\"The Minimum You Need to Know\\\" book series was born. Three years later he wrote his first novel \\\"Infinite Exposure\\\" which got much notice from people involved in the banking and financial security worlds. Some of the attacks predicted in that book have since come to pass. While it was not originally intended to be a trilogy, it became the first book of \\\"The Earth That Was\\\" trilogy: Infinite Exposure Lesedi - The Greatest Lie Ever Told John Smith - Last Known Survivor of the Microsoft Wars When he is not consulting Roland Hughes posts about technology and sometimes politics on his blog. He also has regularly scheduled Sunday posts appearing on the Interesting Authors blog.\",\"sameAs\":[\"https:\\\/\\\/theminimumyouneedtoknow.com\"],\"url\":\"https:\\\/\\\/www.logikalsolutions.com\\\/wordpress\\\/author\\\/seasoned_geek\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"COBOL - Because I Can - Pt 1 &#8211; Logikal Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/","og_locale":"en_US","og_type":"article","og_title":"COBOL - Because I Can - Pt 1 &#8211; Logikal Blog","og_description":"COBOL was my second home. VAX BASIC was the first. I lived there for many years. If you wait for enough people to die off, your old skills become really...","og_url":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/","og_site_name":"Logikal Blog","article_published_time":"2026-09-06T20:30:05+00:00","article_modified_time":"2026-09-06T20:30:06+00:00","og_image":[{"width":200,"height":183,"url":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2020\/11\/vt510.jpeg","type":"image\/jpeg"}],"author":"seasoned_geek","twitter_card":"summary_large_image","twitter_misc":{"Written by":"seasoned_geek","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#article","isPartOf":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/"},"author":{"name":"seasoned_geek","@id":"https:\/\/www.logikalsolutions.com\/wordpress\/#\/schema\/person\/c077f770ade13de7faaf616c3eac6842"},"headline":"COBOL &#8211; Because I Can &#8211; Pt 1","datePublished":"2026-09-06T20:30:05+00:00","dateModified":"2026-09-06T20:30:06+00:00","mainEntityOfPage":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/"},"wordCount":371,"commentCount":0,"publisher":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/#\/schema\/person\/c077f770ade13de7faaf616c3eac6842"},"image":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#primaryimage"},"thumbnailUrl":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2020\/11\/vt510.jpeg","keywords":["COBOL","OpenVMS"],"articleSection":["Experience","Information Technology"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/","url":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/","name":"COBOL - Because I Can - Pt 1 &#8211; Logikal Blog","isPartOf":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#primaryimage"},"image":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#primaryimage"},"thumbnailUrl":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2020\/11\/vt510.jpeg","datePublished":"2026-09-06T20:30:05+00:00","dateModified":"2026-09-06T20:30:06+00:00","breadcrumb":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#primaryimage","url":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2020\/11\/vt510.jpeg","contentUrl":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-content\/uploads\/2020\/11\/vt510.jpeg","width":200,"height":183},{"@type":"BreadcrumbList","@id":"https:\/\/www.logikalsolutions.com\/wordpress\/information-technology\/cobol\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.logikalsolutions.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"COBOL &#8211; Because I Can &#8211; Pt 1"}]},{"@type":"WebSite","@id":"https:\/\/www.logikalsolutions.com\/wordpress\/#website","url":"https:\/\/www.logikalsolutions.com\/wordpress\/","name":"Logikal Blog","description":"For people having an attention span longer than a tweet","publisher":{"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/#\/schema\/person\/c077f770ade13de7faaf616c3eac6842"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.logikalsolutions.com\/wordpress\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.logikalsolutions.com\/wordpress\/#\/schema\/person\/c077f770ade13de7faaf616c3eac6842","name":"seasoned_geek","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r","url":"https:\/\/secure.gravatar.com\/avatar\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r","caption":"seasoned_geek"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/ae9adac14079d84b909e635d7af986fe4568053af4fd9ff8d4109298c392493e?s=96&d=mm&r=r"},"description":"Roland Hughes started his IT career in the early 1980s. He quickly became a consultant and president of Logikal Solutions, a software consulting firm specializing in OpenVMS application and C++\/Qt touchscreen\/embedded Linux development. Early in his career he became involved in what is now called cross platform development. Given the dearth of useful books on the subject he ventured into the world of professional author in 1995 writing the first of the \"Zinc It!\" book series for John Gordon Burke Publisher, Inc. A decade later he released a massive (nearly 800 pages) tome \"The Minimum You Need to Know to Be an OpenVMS Application Developer\" which tried to encapsulate the essential skills gained over what was nearly a 20 year career at that point. From there \"The Minimum You Need to Know\" book series was born. Three years later he wrote his first novel \"Infinite Exposure\" which got much notice from people involved in the banking and financial security worlds. Some of the attacks predicted in that book have since come to pass. While it was not originally intended to be a trilogy, it became the first book of \"The Earth That Was\" trilogy: Infinite Exposure Lesedi - The Greatest Lie Ever Told John Smith - Last Known Survivor of the Microsoft Wars When he is not consulting Roland Hughes posts about technology and sometimes politics on his blog. He also has regularly scheduled Sunday posts appearing on the Interesting Authors blog.","sameAs":["https:\/\/theminimumyouneedtoknow.com"],"url":"https:\/\/www.logikalsolutions.com\/wordpress\/author\/seasoned_geek\/"}]}},"reading_time":5,"post_views":0,"_links":{"self":[{"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/posts\/7994","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/comments?post=7994"}],"version-history":[{"count":1,"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/posts\/7994\/revisions"}],"predecessor-version":[{"id":7998,"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/posts\/7994\/revisions\/7998"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/media\/4103"}],"wp:attachment":[{"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/media?parent=7994"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/categories?post=7994"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.logikalsolutions.com\/wordpress\/wp-json\/wp\/v2\/tags?post=7994"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}