МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра ВТ
Лабораторная работа №1
по дисциплине «Системное программное обеспечение»
Лексика языков программирования. Регулярные выражения
Факультет: АВТ
Группа: АМ-709
Студент: Шаповалов В. Ю.
Вариант: 4342411
Преподаватель: Малявко А.А.
Новосибирск, 2010 г.
1. Цель работы.
Освоение основных навыков работы с учебным пакетом программ автоматизации разработки трансляторов ВебТрансЛаб, изучение и освоение пользовательского интерфейса пакета и форматов файлов с исходными данными/результатами работы, изучение метаязыка регулярных выражений и технологии разработки систем правил определения лексики языков программирования.
2. Ход работы
Порядок выполнения работы:
1. Ознакомиться с перечнем версий учебного пакета, выбрать версию для освоения и дальнейшего использования.
2. Изучить интерфейс выбранной версии пакета ВебТрансЛаб: запуск, регистрация, вид основного окна, команды меню, структура используемых каталогов (рабочий каталог пользователя, каталог программ пакета, каталоги шаблонов, лог-файлов и bat-файлов для сетевых версий) и назначение расположенных в этих каталогах файлов.
3. Используя справку Вебтранслаба (команда меню «Справка» или «Помочь»), изучить структуру таблицы лексических правил (и данных лексического анализатора) основного окна, приемы и способы формирования/редактирования ее содержимого, назначение колонок «имя автомата», «имя группы слов», «регулярное выражение», «действие» и «примечание».
4. Освоить:
- открытие системы лексических и/или синтаксических правил;
- редактирование лексических правил;
- операции сортировки таблицы лексических правил, добавления пустых строк, удаления, вырезания и вставки правил;
- сохранение правил в файле;
5. Изучить структуру текстового xml-файла, содержащего систему правил; освоить внешние операции (в частности - редактирование) этих файлов.
6. Изучить технологию разработки сложных систем регулярных выражений, ориентируясь на свой вариант задания на курсовую работу. Разработать и сохранить фрагмент системы регулярных выражений (пока без действий) для всех (или выбранной самостоятельно части) групп слов языка, заданного в курсовой работе.
3.Выполнение работы
Для выполнения лабораторных и курсовой работ будем использовать версию ВТЛ для Apache TomCat.
Выбранная версия пакета ВебТрансЛаб работает через web-интерфейс. Регистрация осуществляется через номер варианта. Номер варианта - это по существу имя каталога, в котором будут храниться все личные файлы пользователя. Каталог уже должен быть создан администратором сервера в папке wtlRoot\users\ и имя этого каталога вместе с ФИО должны быть занесено в файл userlist.txt, находящийся в корневом каталоге документов «WebTransLab». ФИО пользователя, если они найдены в файле userlist.txt, и номер варианта, т. е. имя его личного каталога, для контроля отображаются в заголовке окна браузера. Форма регистрации представлена на рис.1.
Рис.1 – Форма регистрации
После регистрации мы оказывается на главной странице «ВебТрансЛаб». Вид главной страницы «ВебТрансЛаб» представлен на рис. 2.
Рис. 2.- Вид главной страницы «ВебТрансЛаб».
На главной странице сверху мы видим главное меню, заголовок блока данных лексического анализатора, блок правил лексики, заголовок блока данных синтаксического анализатора, блок правил синтаксиса. Часть блоков скрыта. Клик по заголовку блока позволяет скрыть\показать блок.
Основное меню
Перечень доступных пунктов меню зависит от предыстории работы пользователя в этой и предыдущих сессиях и может содержать следующие пункты:
Открыть – Щелчок по этому пункту приводит к отображению списка файлов рабочего каталога пользователя, при выборе одного из них файл открывается.
Построить – Щелчок по этому пункту приводит к отображению списка всех каталогов, содержащих шаблоны преобразования автоматов в программы их реализации на целевых языках программирования. В начале этого списка появляется строка "Личные шаблоны" в том случае, если в каталоге пользователя есть хотя бы один файл с раширением .wtt. Щелчок по выбранному имени каталога приводит к показу списка имен содержащихся в нем шаблонов.
Выбор пользователем какого-либо шаблона приводит к отправке совокупностей правил определения лексики и синтаксиса на сервер. Отправленные данные сохраняются в каталоге пользователя в файле с именем lastRules.txt и обрабатываются преобразователем в лексический+синтаксический акцептор/анализатор.
О результатах этой обработки пользователь извещается путем выдачи одного из сообщений:
Не удалось ничего построить. Ваши определения лексики/синтаксиса неверны.
Удалось построить только лексический акцептор(анализатор).
Автоматы построены.
Проверить – Щелчок по нему приводит к появлению на экране списка файлов (jsp или php). В том случае если в данной сессии выполнялось построение лексического (и/или синтаксического) акцептора/анализатора с использованием любого шаблона с именем ...to_jsp... (...to_php...), верхняя строка этого списка содержит текст: Последний построенный. Щелчок по выбранной строке вызывает открытие нового окна (окна проверки) для отображения результатов исполнения выбранного файла сервером приложения.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.