Я только начал читать O'Reilly Learning Perl, 6th Edition, и был удивлен, когда наткнулся на этот отрывок.
#!/usr/bin/perl
print "Hello, world!\n";
Давайте представим, что вы ввели это в свой текстовый редактор. (Пока не беспокойтесь о том, что значат эти части и как они работают. О них вы узнаете чуть позже.) Как правило, эту программу можно сохранить под любым именем. Perl не требует никакого специального вида имени файла или расширения, и лучше вообще не использовать расширение.
Почему лучше не иметь расширения? Представьте, что вы написали программу для подсчета очков в боулинге и сказали всем своим друзьям, что она называется bowling.plx. Однажды вы решили переписать его на C. Вы все еще называете его тем же именем, подразумевая, что он все еще написан на Perl? Или вы всем говорите, что у него новое имя? (И не называйте это bowling.c, пожалуйста!) Ответ в том, что это не их дело, на каком языке они написаны, если они просто используют его. Так что, во-первых, его просто нужно было назвать боулингом.
Это единственный источник, который я видел в этом представлении, все остальное, что я прочитал, поддерживает расширение .pl. Я еще не программист на Perl, и я хотел узнать мнение сообщества по этому поводу, прежде чем я приобрел привычку.
.pl
расширение для программ, которые я хотел бы распространять (эта информация - шум, а не сигнал), но это полезное напоминание для локальных сценариев. В любом случае, это обсуждение не имеет значения для> 90% кода Perl, поскольку оно либо в модуле ( .pm
требуется расширение), либо в тесте ( .t
расширение обычно).
#!/usr/bin/env perl
как скрипт Perl, если у файла нет конфликтующего расширения (например, .cpp
). file
Программа (используется для вывода типа MIME для данного входа) правильно выводит text/x-perl
независимо от расширения.