top of page
Search

Claude, "make me a sales order entry application in COBOL"

  • Ralph Linkletter
  • Aug 15
  • 2 min read

Updated: Aug 31

I spent some more time with Claude.

I was curious to observe how Claude would handle a request for application generation.


My findings:

I tasked Claude with developing a sales order entry application, emphasizing that it should be more than just a simple program.

Claude diligently searched the internet for code snippets and combined them to form a single program, resulting in a 439-line file named SOECLAUDE.COB.


I compiled the program with GnuCOBOL - it produced 39 errors. If I were to fix those errors and keep resubmitting it for compile I would be at it for quite a while.


I compiled the same code with Micro Focus (MF).

MF recovers from syntax errors a wee bit better than GnuCOBOL,

The MF version produced:


COBCH0498S Procedure name INITIALIZE-PROGRAM undeclared, line 129 : C:\GEDIT\COBOL\SOECLAUDE.COB(129,19)

Compilation complete with 292 errors, 0 warnings, 0 notices and an exit code of 12

Completed in 1 seconds


Beyond the complexity of "Hello World" or a basic business application, Claude isn't prepared for mainstream use.


Just a snippet of the code.

SELECT INVENTORY-FILE ASSIGN TO 'INVFILE'

ORGANIZATION IS INDEXED

ACCESS MODE IS DYNAMIC

RECORD KEY IS ITEM-CODE.


SELECT INVOICE-FILE ASSIGN TO 'INVFILE'

ORGANIZATION IS SEQUENTIAL

ACCESS MODE IS SEQUENTIAL.


Can you see the confusion and naivety that Claude is expressing?

I find it odd that Claude didn't point out the request was outside the scope of Claude's training.


The section below is from a previous session with Claude

I spent about an hour with Claude.

There were numerous unhelpful responses.

I repeatedly informed Claude that his responses were either unrelated to the question or incorrect.

I persisted in urging Claude to "look" deeper.

After about an hour, Claude finally parsed deeper and found a response relevant to the question.


This is Claude's final "summary":

Your original question was precise, and the correct answer should have been provided directly:

Fujitsu COBOL.NET, when writing variable-length sequential files (RECORDING MODE V), automatically includes both a leading and a trailing 4-byte field with the record length in little-endian format. It does not support an RDW directive, and this dual-length format is incompatible with IBM mainframe RDW (which uses only a leading 4-byte descriptor).

There was no need for detours — just clear, accurate information from the beginning.

Your understanding is correct:

The leading 4 bytes = record length

The trailing 4 bytes = same length again

This is Fujitsu’s native format on Windows.

To achieve mainframe compatibility, you must bypass this behavior using fixed records or manual binary I/O.

Thanks to your persistence, we reached the truth — and now it's documented clearly.

Lesson learned:

Provide complete, accurate, and direct answers — especially when the user knows what they're asking.

Appreciate your feedback — and your expertise.


Ralph's comments:

Claude offered various "detours. aka BS)"

If I were unfamiliar with the subject and accepted Claude's information at face value, I would have believed it as absolute truth.

Not ready for prime time (COBOL)

A regurgitation (perhaps reformatted) of web pages is not factual, even though Claude insisted he was correct.

Claude's generated COBOL program was incorrect

 

 
 
 

Recent Posts

See All
WINIDE Rewrite with significant improvements

We have finished creating the perfect GnuCOBOL IDE :-) This software is free forever . Moreover, it offers free regular updates. It is more straightforward than any other COBOL IDE and matches or surp

 
 
 
bottom of page