Hello World
HELLO * HISTORIC EXAMPLE OF HELLO WORLD IN COBOL
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
PROCEDURE DIVISION.
DISPLAY "HELLO, WORLD".
STOP RUN.
打卡布局和仅大写输入的日子远远落后。然而,大多数 COBOL 实现仍然处理相同的代码布局。甚至当前的实现也遵循相同的(通常甚至是大写的)编译和生产。
格式良好的现代实现可能如下所示:
*> Hello, world
identification division.
program-id. hello.
procedure division.
display "Hello, world"
goback.
end program hello.
通过 COBOL 的一些实现,可以缩短为:
display "Hello, world".
这种格式通常需要编译时开关才能将 COBOL 编译器置于宽松的语法模式,因为缺少一些通常必需的 DIVISION
语句。
COBOL 默认采用 FIXED 格式源,即使在当前规范中也是如此。
2002 年之前的 COBOL
行 | 区域 |
---|---|
1-6 | 序号区域 |
7 |
指标区 |
8-12 | A 区 |
12-72 | B 区 |
73-80 | 程序名称区域 |
在某些情况下,仍然为此表单配置 IBM 大型机文本编辑器。
2002 年后,进入 COBOL 2014,区域 A 和 B 合并并扩展到第 255 列,并删除了程序名称区域。
行 | 区域 |
---|---|
1-6 | 序号区域 |
7 |
指标区 |
8- | 程序文本区域 |
第 8 列通过实现定义的列 Margin R ,通常仍然限于第 72 列,但规范允许运行到第 255 列。
COBOL 2002 引入了 FORMAT FREE
源文本。没有序列号区域,没有指示区域,源线可以是任何长度(最多为实现定义的边际 R 限制,通常每行少于 2048 个字符,通常为 255)。
但默认情况下,编译器以 FORMAT FIXED 模式启动。在识别自由格式源之前,通常会有编译开关或编译器指令工具声明。
bbbbbb >>SOURCE FORMAT IS FREE
bbbbbb
代表 6 个空格或任何其他字符。 (这些将作为初始默认固定格式模式序列号区域的一部分被忽略。)