~attofoxes@TTBP



24 september 2026

Feeling annoyed at a COBOL procedure call convention which I think is either a French thing, a boomer thing, or both.

It goes like this:

P10500-BEGIN-PROC1.
    DO PROCEDURE STUFF
       ON W-VAR1 W-VAR2 W-VAR3.
    PERFORM P20300-BEGIN-PROC2
       THRU P20300-END-PROC2.
P10500-END-PROC1.
    EXIT.

P20300-BEGIN-PROC2.
    STRING W-VAR1 W-VAR2 W-VAR3
      INTO W-OUTPUTORSOMETHING.
    PERFORM P30999-BEGIN-PROC3
       THRU P30999-END-PROC3.
P20300-END-PROC2.
    EXIT.

P30999-BEGIN-PROC3.
    WRITE W-OUTPUT TO F-SOMEFILEIDK.
P30999-END-PROC3.
    STOP RUN.

You get the idea. Note of course that EXIT is a no-op, unless it's EXIT PARAGRAPH or EXIT PROGRAM or EXIT PERFORM or something in which case it's a break, of course.

Anyway I got vscode working on this and you won't believe how many dead-code warnings popped up.

🐦‍⬛