Происхождение названия "основной" для точки входа в программу?

Из любопытства, каково происхождение названия "главный" для точки входа в программу?

4 ответа

До C был PL/I IBM. В PL/I вы объявили процедуру с опциями. Если вы написали

PROC MUMBLE OPTIONS(MAIN);

что сказал компилятору, что MUMBLE процедура была основной процедурой. PL/I, возможно, принял эту конвенцию из другого места, или C, возможно, принял ее от PL/I, или, может быть, это было просто в воздухе. Но это определенно предшествует C.

(Если кому-то интересно, почему все верхние регистры клавиш IBM дня не поддерживали символы нижнего регистра. Да, я писал программы на перфокартах. Наверное, поэтому я немного шатался по поводу синтаксиса; в то время как.)

Я уверен, что это связано с тем, что это "основная" функция программы. Что-то большее, чем это, мне неизвестно.

В Фортране основная программа была основной, хотя у нее не было названия. Он отличался от подпрограмм и функций наличием исполняемого оператора (или другого некомментирующего оператора) без предшествующего оператора SUBROUTINE или FUNCTION.

Когда более поздние языки решили, что они хотят, чтобы основная подпрограмма начиналась с начальной строки, как и другие процедуры или функции, некоторые из них приняли слово MAIN или main по-разному.

Как заметил кто-то другой, Паскаль сделал это по-другому. Скрипты оболочки и Perl напоминают фортран.

Насколько я понимаю (хотя я не смог найти ссылку для подтверждения), некоторые ранние языки имели понятие основной процедуры (первой могла быть Ада), даже если вам не нужно было называть ее основной ().

Я думаю, что C был первым языком, который фактически использовал этот токен в качестве имени. C во многом заменил Pascal, у которого не было именованной процедуры запуска, если я правильно помню.

Оттуда это повлияло на последующие языки, вдохновленные C, такие как C++, Java и C#.

Это также повлияло на культурные языки, которые не требуют такой функции, такие как Python.

Другие вопросы по тегам