Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
DMoroz / Диплом.doc
Скачиваний:
42
Добавлен:
16.04.2013
Размер:
1 Мб
Скачать

2.2.2. Синтаксис языка

Perl – это язык со свободным форматом записи программ (вроде языка С) – пробельные символы, включаемые между лексемами (элементами программы), не обязательны, если две рядом стоящие лексемы невозможно принять за какую-то третью лексему (К пробельным символам относятся пробелы, знаки табуляции, символы новой строки, символы возврата каретки, символы перехода на новую страницу). Тип и количество пробельных символов между лексемами могут быть произвольными.

Хотя почти каждую Perl-программу можно записать в одну строку, эти программы обычно пишут с отступами, как С-программы, причем вложенные операторы записывают с большим отступом, чем охватывающие.

Perl-программа состоит из всех операторов Perl, имеющихся в файле и рассматриваемых в совокупности как одна большая программа, подлежащая выполнению. Понятия «основной» (main) программы, как в С, здесь нет.

Комментарием является все, что следует за незаключенным в кавычки знаком # вплоть до конца строки. Многострочных комментариев, к сожалению здесь нет. Многострочные комментарии были бы очень удобны в случаях, когда программисты на высоком уровне описывают какие-либо сложные функции или, например, что делают несколько последующих строк кода. Если комментарии будут попадаться через строчку, то это резко снизит и так очень непростую читаемость Perl-программ. Это будет похоже на чтение двух книг одновременно, причем по строке из каждой поочередно. Многострочные комментарии во многих языках программирования также активно используются при отладке программ.

Изначально Perl являлся интерпретируемым языком. Интерпретатор языка Perl перед выполнением программы полностью разбирает ее и компилирует в свой внутренний формат. Таким образом, Perl работает и как компилятор, и как интерпретатор. С одной стороны, это компилятор, потому что перед выполнением первого оператора программы она полностью считывается и разбирается. С другой стороны, Perl – интерпретатор, потому что никакого объектного кода, занимающего место на диске в ожидании исполнения нет.

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

Поэтому в настоящее время разработан также компилятор Perl, позволяющий производить кэширование компилированного объектного кода между вызовами. Использование компилятора позволяет существенно увеличить производительность WWW-серверов, использующих CGI-скрипты, написанные на языке Perl.

2.3. Особенности отладки cgi-программ

CGI-программы - не самые простые в отладке. По сложности отладки они способны сравнится лишь с отладкой драйверов. Вся сложность заключается в том, что скрипт выполняется не как обычная программа. Он выполняется в специальной среде сервера, которая создается при клиентском запросе на непривилегированном уровне.

Потенциальные ошибки, возникающие при написании CGI-программ на языке Perl и взаимодействующие с базой данных, приведены на pис. 34.

Рис. 34. Потенциальные источники ошибок

Соседние файлы в папке DMoroz