Анимация
JavaScript
|
Главная Библионтека Заработало! Что же произошло? Команда perl hello запустила на вашем компьютере программу perl. Эта программа называется интерпретатором perl. Интерпретатор - "ум, честь и совесть" Perl. Его задача состоит в том, чтобы открыть указанный в командной строке файл (в данном случае hello), найти в нем программу и выполнить ее. Под фразой "выполнить ее" я подразумевал следующее. Прежде всего интерпретатор должен проверить корректность синтаксиса выражений, функций и операторов, составляющих программу на Perl, а затем последовательно все их выполнить. Интерпретатор perl читает программу с диска и выполняет ее до тех пор, пока она не закончится. После выполнения программы интерпретатор возвращает управление операционной системе. Теперь посмотрим, как же выполнялась программа hello. Проследим за Perl Первая строка hello tl/usr/bin/perl В Perl все, что идет в строке после символа считается комментарием. Комментарии попросту игнорирует. Однако символы означают нечто другое. После них должен быть указан путь к интерпретатору perl - /usr/bin/perl. В UNIX принято, что содержащая в первой строке символы после которых указан путь к интерпретатору, может запускаться по имени. Обратитесь к разделу "Вопросы и ответы" в конце этого занятия за информацией о запуске программ. Некоторые Web-серверы, например Apache, также используют строку с V. для запуска программ без неносред-ственного вызова интерпретатора perl. Для нас сейчас это не важно, мы считаем первую строку комментарием. Следующая строка программы: print "Hello, World!\n"; В этой строке находится оператор Perl, обозначающий действия, которые должен выполнить Perl. Строка содержит вызов функции print, которой передается строка Hello, World! и символ новой строки. Функция должна отобразить эту строку на экране. В конце оператора следует точка с запятой. В Perl символ ; называется опере.М1телем. Он разделяет операторы в программах Peri и указывает, где конец одного онератора и начало следующего. В нашем случае функция print отображает фразу Hello, World!. Символы \п в конце строки говорят Per! о том, что нужно вывести пустую строку после нанечатанной фразы. Кавычки, в которые заключена фраза и \п, сообщают Perl о том, что это строка, а не другая функция. На следующем занятии мы посвятим строкам достаточно много времени. Это вы должны знать Программы на Perl можно записывать в свободной форме. Синтаксис языка не требует каких-либо особых форм записи или форматирования текста. Вы можете номещать между онераторами пробелы, табуляторы и даже символы перехода на новую строку. В Perl все они называются пробелами и никак не влияют на работу интерпретатора. Начало работе! с Perl 29 Конечно, есть определенные места в программе, где нельзя помешать такие символы. Например, нельзя вставлять пробелы в имя функции: рг int - неправильное имя функции. Нельзя также вставлять их в числа, скажем, 25 61 - не то же самое, что 2561. Пробелы внутри строки, как, например, в строке "Hello, World!", всегда отображаются. За исключением приведенных выше случаев, во все остальные места программы можно безболезненно помешать символы пробела. Например, вы можете переписать программу из рассматриваемого нами примера следующим образом: ♦ l/usr/bin/perl "Hello, WorlIXn" Она будет функционировать точно так же, как и оригинал. Эта некоторая вольность Perl позволяет выбирать из множества стилей написания программ тот, который больше всего вам придется по душе. Вы можете совершенно свободно выразить себя в этом. Не забывайте только и о других пользователях, которые, возможно, когда-нибудь обратятся к вашим программам. Постарайтесь сделать ваш код понятным и для них. Стиль, используемый в наших примерах, достаточно консервативен. Иногда операторы разделяются несколькими пустыми строками, чтобы разделить логические блоки в достаточно длинной программе на Perl. Кстати, в документации Perl приведено описание рекомендуемого стиля оформления программ. Документ этот называется peristyle. Стили оформления программ в Peri могут быть весьма вычурными. Программы мог быть написаны в столбик, как стихотворение, или в одну строку. Некоторые программисты умудряются оформлять программы в виде рисунка, и, что самое интересное, программы при этом не только не перестают работать, но еще и выполняют полезную работу! Ка>№1Й год The Perl Journal {ЬЩ: тт. tj.сот) проводит конкурс на самую запуганную Perl-программу - Obfuscated Perl Contest. Лучше бы вам этого не видеть. Резюме На этом занятии вы немножко окунулись в мир Perl и увидели, как работает интерпретатор. Но мере чтения книги вы будете узнавать все больше и больше подробностей. Вы узнали, как инсталлировать Perl, проверить правильность его работы и убедиться, что все установлено должным образом. Вы набрали и, надеемся, запустили свою первую программу на Perl и разобрались, как она работает. Вопросы и ответы Как называются файлы, которые запускаем 1, - сценарии или программы? Название не имеет особого значения. Обычно программы компилируются в машинный код, который сохраняется в специальном файле, допускающем запуск средствами операционной системы. Сценарии же загружаются во внешнюю программу, которая выполняет их каждый раз, когда это требуется. Создатель Perl Лэрри Уолл как-то сказал: "Сценарий - это то, что дают актеру, а программу раздают зрителям". Как хотите - так и понимайте. В этой книге я буду использовать термин программа на Perl, и если вы будете стараться, то, прочитав данную книгу, сможете гордо называть себя программистом на Perl. Необходимо ли все время вручную набирать листинги этой книги? Некоторые из них довольно длинные. Все тексты программ и примеров из этой книги со всеми требуемыми файлами данных содержатся на прилагаемом компакт-диске. В раздела программы" вы упоминали о более простом способе запуска программ в UNIX. Что это за способ? Сначала убедитесь, что в нервой строке файла после символов *! указан нравиль-ный путь к интерпретатору как правило, или, на некоторых маши- нах, Далее вы должны сделать ваш файл выполняемым с помо- щью команды Для программы hello команда оболочки UNIX будет выглядеть ка mod +x hello. После этого вы- сможете запускать программу на Perl командой hello или ./hello. Не называйте в UN программу именем test, поскольку в оболочке UN уже имеется команда с таким именем. В результате вы не сможете запустить свою программу. Обратитесь к документации по оболочкам, чтобы узнать, каких еще имен следует избегать. Если вы хотите воспользоваться готовыми файлами с листингами программ, которые приведены на компакт-диске, не забудьте изменить первую строку программы и указать после символов !* путь к интерпретатору Perl вашей системы. В противном случае вам придется запускать программы из командной строки с помощью команды perl тя прогрйшш, 1«кбыло описано выше, в разделе "Запуск программы". Семинар Контрольные вопросы 1. Perl - название 1ка, a perl - это: а) также название языка; б) интерпретатор; в) команда DOS. 2. Откуда всегда можно загрузить копию документации по Perl? а) http: www.microsoft.com б) http: www.perl.com в) http: www.perl.net 3. На какой странице руководства можно найти описание синтаксиса Perl? persyn б) perlop в) perlfaq 0 1 2 3 [ 4 ] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |