<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.webhuis.nl:443/index.php?action=history&amp;feed=atom&amp;title=Control_flow</id>
	<title>Control flow - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.webhuis.nl:443/index.php?action=history&amp;feed=atom&amp;title=Control_flow"/>
	<link rel="alternate" type="text/html" href="https://wiki.webhuis.nl:443/index.php?title=Control_flow&amp;action=history"/>
	<updated>2026-09-11T06:35:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.17</generator>
	<entry>
		<id>https://wiki.webhuis.nl:443/index.php?title=Control_flow&amp;diff=4773&amp;oldid=prev</id>
		<title>Martin: Created page with &quot;&lt;span id=&quot;control-flow&quot;&gt;&lt;/span&gt; = Control Flow =  &#039;&#039;&#039;Project:&#039;&#039;&#039; pgcobol — Prime Numbers Application&lt;br /&gt; &#039;&#039;&#039;Version:&#039;&#039;&#039; 1.0 (reverse-engineered)&lt;br /&gt; &#039;&#039;&#039;Date:&#039;&#039;&#039; 2026-03-17   -----  &lt;span id=&quot;conventions&quot;&gt;&lt;/span&gt; == 1. Conventions ==  * &#039;&#039;&#039;PERFORM&#039;&#039;&#039; — synchronous paragraph call; returns to the next statement after the PERFORM. * &#039;&#039;&#039;CALL&#039;&#039;&#039; — dynamic subprogram call; passes a data block by reference; returns via EXIT PROGRAM. * &#039;&#039;&#039;EVALUATE TRUE&#039;&#039;&#039; — multi-way...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.webhuis.nl:443/index.php?title=Control_flow&amp;diff=4773&amp;oldid=prev"/>
		<updated>2026-03-25T16:50:42Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;span id=&amp;quot;control-flow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; = Control Flow =  &amp;#039;&amp;#039;&amp;#039;Project:&amp;#039;&amp;#039;&amp;#039; pgcobol — Prime Numbers Application&amp;lt;br /&amp;gt; &amp;#039;&amp;#039;&amp;#039;Version:&amp;#039;&amp;#039;&amp;#039; 1.0 (reverse-engineered)&amp;lt;br /&amp;gt; &amp;#039;&amp;#039;&amp;#039;Date:&amp;#039;&amp;#039;&amp;#039; 2026-03-17   -----  &amp;lt;span id=&amp;quot;conventions&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; == 1. Conventions ==  * &amp;#039;&amp;#039;&amp;#039;PERFORM&amp;#039;&amp;#039;&amp;#039; — synchronous paragraph call; returns to the next statement after the PERFORM. * &amp;#039;&amp;#039;&amp;#039;CALL&amp;#039;&amp;#039;&amp;#039; — dynamic subprogram call; passes a data block by reference; returns via EXIT PROGRAM. * &amp;#039;&amp;#039;&amp;#039;EVALUATE TRUE&amp;#039;&amp;#039;&amp;#039; — multi-way...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;span id=&amp;quot;control-flow&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
= Control Flow =&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Project:&amp;#039;&amp;#039;&amp;#039; pgcobol — Prime Numbers Application&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Version:&amp;#039;&amp;#039;&amp;#039; 1.0 (reverse-engineered)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Date:&amp;#039;&amp;#039;&amp;#039; 2026-03-17&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;conventions&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== 1. Conventions ==&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;PERFORM&amp;#039;&amp;#039;&amp;#039; — synchronous paragraph call; returns to the next statement after the PERFORM.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;CALL&amp;#039;&amp;#039;&amp;#039; — dynamic subprogram call; passes a data block by reference; returns via EXIT PROGRAM.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;EVALUATE TRUE&amp;#039;&amp;#039;&amp;#039; — multi-way branch on 88-level conditions; equivalent to a CASE statement.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;PERFORM … UNTIL&amp;#039;&amp;#039;&amp;#039; — loop; condition tested before each iteration (DO-WHILE in reverse — test first).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;primesmain-paragraph-map&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== 2. primesmain — Paragraph Map ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;PROCEDURE DIVISION&lt;br /&gt;
│&lt;br /&gt;
├── ACCEPT / MOVE setup&lt;br /&gt;
├── PERFORM r90-start-session ──────────────────────────────► r90-start-session&lt;br /&gt;
│                                                               │ CALL primesui &amp;amp;quot;start&amp;amp;quot;&lt;br /&gt;
│                                                               │ IF ok: CALL primesui &amp;amp;quot;log-message&amp;amp;quot; ×2&lt;br /&gt;
│                                                               │ ELSE: DISPLAY + STOP RUN&lt;br /&gt;
│                                                               └── return&lt;br /&gt;
│&lt;br /&gt;
├── EVALUATE TRUE&lt;br /&gt;
│     WHEN report-primes ──────────────────────────────────────► CALL primesui &amp;amp;quot;log-message&amp;amp;quot;&lt;br /&gt;
│     │                                                          PERFORM r92-generate-primes ──► r92-generate-primes&lt;br /&gt;
│     │                                                                                          │ CALL primesgen&lt;br /&gt;
│     │                                                                                          └── return&lt;br /&gt;
│     WHEN generate-primes ────────────────────────────────────► CALL primesui &amp;amp;quot;log-message&amp;amp;quot;&lt;br /&gt;
│     │                                                          *** PERFORM commented out ***&lt;br /&gt;
│     WHEN OTHER ─────────────────────────────────────────────► CALL primesui &amp;amp;quot;log-message&amp;amp;quot;&lt;br /&gt;
│                                                                PERFORM r99-stop-session&lt;br /&gt;
│                                                                STOP RUN&lt;br /&gt;
│&lt;br /&gt;
├── CALL primesui &amp;amp;quot;log-message&amp;amp;quot;&lt;br /&gt;
├── PERFORM r99-stop-session ───────────────────────────────► r99-stop-session&lt;br /&gt;
│                                                               │ CALL primesui &amp;amp;quot;stop&amp;amp;quot;&lt;br /&gt;
│                                                               └── return&lt;br /&gt;
└── STOP RUN&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;CALLs issued by primesmain:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!width=&amp;quot;33%&amp;quot;| Call&lt;br /&gt;
!width=&amp;quot;33%&amp;quot;| Using&lt;br /&gt;
!width=&amp;quot;33%&amp;quot;| Condition&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CALL &amp;amp;quot;primesui&amp;amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| primes-ui&lt;br /&gt;
| &amp;lt;code&amp;gt;ui-methods = &amp;amp;quot;start&amp;amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CALL &amp;amp;quot;primesui&amp;amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| primes-ui&lt;br /&gt;
| &amp;lt;code&amp;gt;ui-methods = &amp;amp;quot;log-message&amp;amp;quot;&amp;lt;/code&amp;gt; (multiple)&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CALL &amp;amp;quot;primesgen&amp;amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| primes-session&lt;br /&gt;
| method = “report” or “generate”&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CALL &amp;amp;quot;primesui&amp;amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
| primes-ui&lt;br /&gt;
| &amp;lt;code&amp;gt;ui-methods = &amp;amp;quot;stop&amp;amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;primesgen-paragraph-map&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== 3. primesgen — Paragraph Map ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;PROCEDURE DIVISION USING primes-session&lt;br /&gt;
│&lt;br /&gt;
└── EVALUATE TRUE on methods&lt;br /&gt;
      WHEN report-primes&lt;br /&gt;
      │  PERFORM r90-start-primes-report ──────────────────► r90-start-primes-report&lt;br /&gt;
      │  │                                                    │ CALL primes &amp;amp;quot;connect&amp;amp;quot;&lt;br /&gt;
      │  │                                                    │ CALL primes &amp;amp;quot;cursor&amp;amp;quot;&lt;br /&gt;
      │  │                                                    │ PERFORM r94-fetch ──► r94-fetch&lt;br /&gt;
      │  │                                                    │                       │ CALL primes &amp;amp;quot;next-prime&amp;amp;quot;&lt;br /&gt;
      │  │                                                    │                       └── return&lt;br /&gt;
      │  │                                                    └── return&lt;br /&gt;
      │  │&lt;br /&gt;
      │  IF session-method-ok&lt;br /&gt;
      │    PERFORM r86-report-primes UNTIL session-method-eof&lt;br /&gt;
      │    │  ┌──────────────────────────────────────────────► r86-report-primes (loop body)&lt;br /&gt;
      │    │  │ CALL primesui &amp;amp;quot;write&amp;amp;quot;&lt;br /&gt;
      │    │  │ PERFORM r94-fetch ──────────────────────────► r94-fetch&lt;br /&gt;
      │    │  │                                               │ CALL primes &amp;amp;quot;next-prime&amp;amp;quot;&lt;br /&gt;
      │    │  │                                               └── return&lt;br /&gt;
      │    │  └── (loop back)&lt;br /&gt;
      │&lt;br /&gt;
      WHEN generate-primes&lt;br /&gt;
      │  PERFORM r91-start-primes-generation ──────────────► r91-start-primes-generation&lt;br /&gt;
      │  │                                                    │ CALL primes &amp;amp;quot;connect&amp;amp;quot;&lt;br /&gt;
      │  │                                                    └── return&lt;br /&gt;
      │  │&lt;br /&gt;
      │  IF session-method-ok&lt;br /&gt;
      │    PERFORM r80-test-number UNTIL test-number = 999999999&lt;br /&gt;
      │    │  ┌──────────────────────────────────────────────► r80-test-number (loop body)&lt;br /&gt;
      │    │  │ DIVIDE test-number BY test-divider → test-rest&lt;br /&gt;
      │    │  │ EVALUATE TRUE&lt;br /&gt;
      │    │  │   WHEN test-rest = 0&lt;br /&gt;
      │    │  │     PERFORM r82-next-test-number ──────────► r82-next-test-number&lt;br /&gt;
      │    │  │                                               │ ADD 2 TO test-number&lt;br /&gt;
      │    │  │                                               │ COMPUTE sqrt&lt;br /&gt;
      │    │  │                                               │ MOVE 1 TO old-ident&lt;br /&gt;
      │    │  │                                               │ PERFORM r89-get-next-divider ──► r89-get-next-divider&lt;br /&gt;
      │    │  │                                               │                                  │ CALL primes &amp;amp;quot;get&amp;amp;quot;&lt;br /&gt;
      │    │  │                                               │                                  └── return&lt;br /&gt;
      │    │  │                                               └── return&lt;br /&gt;
      │    │  │   WHEN test-divider &amp;amp;gt; test-number-sqr&lt;br /&gt;
      │    │  │     PERFORM r85-write-prime ─────────────► r85-write-prime&lt;br /&gt;
      │    │  │     │                                       │ CALL primes &amp;amp;quot;write&amp;amp;quot;&lt;br /&gt;
      │    │  │     │                                       │ CALL primesui &amp;amp;quot;write&amp;amp;quot;&lt;br /&gt;
      │    │  │     │                                       └── return&lt;br /&gt;
      │    │  │     PERFORM r82-next-test-number (as above)&lt;br /&gt;
      │    │  │   WHEN OTHER&lt;br /&gt;
      │    │  │     PERFORM r89-get-next-divider (as above)&lt;br /&gt;
      │    │  └── (loop back)&lt;br /&gt;
      │&lt;br /&gt;
      WHEN OTHER&lt;br /&gt;
        LOG &amp;amp;quot;Bad method&amp;amp;quot;&lt;br /&gt;
│&lt;br /&gt;
└── PERFORM r99-close-primes ────────────────────────────► r99-close-primes&lt;br /&gt;
    │                                                       │ CALL primes &amp;amp;quot;disconnect&amp;amp;quot;&lt;br /&gt;
    │                                                       └── return&lt;br /&gt;
    EXIT PROGRAM&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Loop summary — primesgen:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Loop&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Type&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Condition&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Paragraph&lt;br /&gt;
|-&lt;br /&gt;
| Report read&lt;br /&gt;
| PERFORM UNTIL&lt;br /&gt;
| &amp;lt;code&amp;gt;session-method-eof&amp;lt;/code&amp;gt; (result = 9)&lt;br /&gt;
| r86-report-primes&lt;br /&gt;
|-&lt;br /&gt;
| Sieve&lt;br /&gt;
| PERFORM UNTIL&lt;br /&gt;
| &amp;lt;code&amp;gt;test-number = 999999999&amp;lt;/code&amp;gt;&lt;br /&gt;
| r80-test-number&lt;br /&gt;
|-&lt;br /&gt;
| Inner (test-number)&lt;br /&gt;
| EVALUATE inside PERFORM&lt;br /&gt;
| drives calls to r82 / r85 / r89&lt;br /&gt;
| r80-test-number&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;primes-dal-paragraph-map&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== 4. primes (DAL) — Paragraph Map ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;PROCEDURE DIVISION USING primes-dal&lt;br /&gt;
│&lt;br /&gt;
└── EVALUATE TRUE on dal-methods&lt;br /&gt;
      WHEN next-prime    → PERFORM r80-get-next-prime ──────► r80-get-next-prime&lt;br /&gt;
      │                                                        │ PERFORM s02-fetch ──► s02-fetch&lt;br /&gt;
      │                                                        │                       │ EXEC SQL FETCH&lt;br /&gt;
      │                                                        │                       └── return&lt;br /&gt;
      │                                                        └── return&lt;br /&gt;
      WHEN next-divider  → PERFORM r81-get-next-divider ────► r81-get-next-divider&lt;br /&gt;
      │                                                        │ ADD 1 TO old-ident → new-ident&lt;br /&gt;
      │                                                        │ EXEC SQL SELECT prime WHERE ident=new-ident&lt;br /&gt;
      │                                                        │ MOVE new-ident TO old-ident&lt;br /&gt;
      │                                                        └── return&lt;br /&gt;
      WHEN write-prime   → PERFORM r83-write-prime ──────────► r83-write-prime&lt;br /&gt;
      │                                                         │ EXEC SQL INSERT&lt;br /&gt;
      │                                                         └── return&lt;br /&gt;
      WHEN db-connect    → PERFORM s00-connect ──────────────► s00-connect&lt;br /&gt;
      │                                                         │ EXEC SQL CONNECT&lt;br /&gt;
      │                                                         └── return&lt;br /&gt;
      WHEN db-cursor     → PERFORM s01-cursor ───────────────► s01-cursor&lt;br /&gt;
      │                                                         │ EXEC SQL START TRANSACTION&lt;br /&gt;
      │                                                         │ EXEC SQL OPEN primescursor&lt;br /&gt;
      │                                                         └── return&lt;br /&gt;
      WHEN db-disconnect → PERFORM s99-disconnect ───────────► s99-disconnect&lt;br /&gt;
      │                                                         │ EXEC SQL CONNECT RESET&lt;br /&gt;
      │                                                         └── return&lt;br /&gt;
      WHEN OTHER         → dal-result = 1&lt;br /&gt;
│&lt;br /&gt;
└── EXIT PROGRAM&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;No loops&amp;#039;&amp;#039;&amp;#039; in primes.cbl. Each invocation handles exactly one SQL operation and returns.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;primesui-paragraph-map&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== 5. primesui — Paragraph Map ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;PROCEDURE DIVISION USING primes-ui&lt;br /&gt;
│&lt;br /&gt;
└── EVALUATE TRUE on ui-methods&lt;br /&gt;
      WHEN start-ui    → PERFORM r90-start-primesui ────────► r90-start-primesui&lt;br /&gt;
      │                                                         │ OPEN OUTPUT fprinter&lt;br /&gt;
      │                                                         │ IF ok: result=0, idx=1&lt;br /&gt;
      │                                                         │   PERFORM r98-message-ui ──► r98-message-ui&lt;br /&gt;
      │                                                         │                              │ DISPLAY on scherm&lt;br /&gt;
      │                                                         │                              └── return&lt;br /&gt;
      │                                                         └── return&lt;br /&gt;
      WHEN write-ui    → PERFORM r92-write-primesui ─────────► r92-write-primesui&lt;br /&gt;
      │                   │ load cell(primes-idx)&lt;br /&gt;
      │                   │ idx + 1&lt;br /&gt;
      │                   │ IF new-page → PERFORM r93-new-page ──► r93-new-page&lt;br /&gt;
      │                   │                                         │ WRITE heading&lt;br /&gt;
      │                   │                                         │ WRITE col header&lt;br /&gt;
      │                   │                                         │ new-page = 0&lt;br /&gt;
      │                   │                                         └── return&lt;br /&gt;
      │                   │ IF idx = 7 → WRITE line, idx = 1&lt;br /&gt;
      │                   │ IF linage = 53 → PERFORM r94-eop ──► r94-eop&lt;br /&gt;
      │                   │                                       │ WRITE blank&lt;br /&gt;
      │                   │                                       │ WRITE footing&lt;br /&gt;
      │                   │                                       │ page-number + 1&lt;br /&gt;
      │                   │                                       │ new-page = 1&lt;br /&gt;
      │                   │                                       └── return&lt;br /&gt;
      │                   └── return&lt;br /&gt;
      WHEN message-ui  → PERFORM r98-message-ui (as above)&lt;br /&gt;
      WHEN stop-ui     → PERFORM r99-stop-primesui ──────────► r99-stop-primesui&lt;br /&gt;
      │                   │ u-sequence = 0, u-number = 0&lt;br /&gt;
      │                   │ PERFORM r92-write-primesui UNTIL new-page  ← flush loop&lt;br /&gt;
      │                   │ PERFORM r98-message-ui&lt;br /&gt;
      │                   │ CLOSE fprinter&lt;br /&gt;
      │                   └── return&lt;br /&gt;
      WHEN OTHER       → ui-method-result = 1&lt;br /&gt;
│&lt;br /&gt;
└── EXIT PROGRAM&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Loop summary — primesui:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Loop&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Type&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Condition&lt;br /&gt;
!width=&amp;quot;25%&amp;quot;| Location&lt;br /&gt;
|-&lt;br /&gt;
| Flush partial line&lt;br /&gt;
| PERFORM UNTIL&lt;br /&gt;
| &amp;lt;code&amp;gt;new-page&amp;lt;/code&amp;gt; (print-new-page = 1)&lt;br /&gt;
| r99-stop-primesui&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span id=&amp;quot;cross-program-control-flow-summary&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
== 6. Cross-Program Control Flow Summary ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;OS&lt;br /&gt;
 └─► primesmain  PROCEDURE DIVISION&lt;br /&gt;
       │&lt;br /&gt;
       ├─► CALL primesui  (start, log×n, stop)&lt;br /&gt;
       │      └── EXIT PROGRAM back to primesmain&lt;br /&gt;
       │&lt;br /&gt;
       └─► CALL primesgen  (once, with primes-session)&lt;br /&gt;
              │&lt;br /&gt;
              ├─► CALL primes  (connect)&lt;br /&gt;
              │      └── EXIT PROGRAM back to primesgen&lt;br /&gt;
              ├─► CALL primes  (cursor / next-prime / next-divider / write / disconnect)&lt;br /&gt;
              │      └── EXIT PROGRAM back to primesgen  [repeated in loop]&lt;br /&gt;
              ├─► CALL primesui  (log-message / write)&lt;br /&gt;
              │      └── EXIT PROGRAM back to primesgen  [repeated in loop]&lt;br /&gt;
              └── EXIT PROGRAM back to primesmain&amp;lt;/pre&amp;gt;&lt;br /&gt;
All inter-program communication is by reference (shared data blocks). There are no GOTO statements in the current source. All branching is via PERFORM, EVALUATE, and IF/ELSE. No COPY-based GOTO or ALTER is used.&lt;br /&gt;
&amp;lt;hr/&amp;gt;&lt;br /&gt;
Terug naar: [[Primes_programs_specifications]] | [[Cobol and PostgreSQL]]&lt;/div&gt;</summary>
		<author><name>Martin</name></author>
	</entry>
</feed>