Почему COBOL имеет как SECTION
, так и PARAGRAPH
?
Может кто-нибудь объяснить, почему дизайнеры COBOL создали как SECTION
, так и PARAGRAPH
s? Они были со времен первоначального выпуска COBOL, поэтому я подозреваю, что настоящая причина их существования давно исчезла (аналогично вещам типа NEXT SENTENCE
, которые все еще находятся в спецификации языка для обратной совместимости, но больше не требуются с момента введения явные терминаторы возможностей).
Я предполагаю, что SECTION
может быть введен для поддержки наложений программ. SECTION
имеет необязательный номер PRIORITY, связанный с ним, чтобы идентифицировать оверлей программы, частью которых является. Однако большинство современных реализаций COBOL игнорируют или отбрасывают числа ПРИОРИТЕТНОСТИ (и наложения).
В настоящее время я вижу, что SECTION
все еще требуется в DECLARATIVE
части PROCEDURE DIVISION
, но не может найти оправдания для этого. Я не вижу, чтобы семантическая разница между SECTION
и PARAGRAPH
, кроме PARAGRAPH
, была подчинена SECTION
.
Некоторые магазины COBOL запрещают использование SECTION
в пользу PARAGRAPH
(кажется распространенным в Северной Америке). Другие запрещают PARAGRAPH
в пользу SECTION
(кажется распространенным в Европе). У других есть рекомендации относительно того, когда каждый из них подходит. Все это кажется мне совершенно произвольным - и это ставит вопрос: почему в первую очередь они были включены в спецификацию языка? И есть ли у них какое-либо отношение сегодня?
Если вы ответите на этот вопрос, было бы здорово, если бы вы также указали ссылку на поддержку своего ответа.
Спасибо