Уважаемый слушатель!

Изучение дисциплины “Теория языков программирования и методы трансляции” ставит своей целью освоение классических основ теории формальных языков и принципов построения и функционирования трансляторов. В курсе рассматриваются такие понятия, как генераторы и распознаватели языков программирования, грамматики, автоматы различных типов, преобразователи языков, трансляторы и компиляторы. Изучаются различные по трудоёмкости способы анализа текстов программ и синтеза результирующего кода. Большое внимание уделено рассмотрению методов синтаксического разбора текстов.

В процессе освоения дисциплины студент должен получить основные сведения о принципах генерации языков программирования и основных генераторах в соответствии с типами языков согласно иерархии Хомского, способах распознавания цепочек языков, построения и функционирования трансляторов, этапах компиляции, основных способах перевода текстов.

Предполагается, что студент уже имеет определённые навыки разработки и отладки программ на языках программирования высокого уровня, а также владеет основными понятиями теории множеств, комбинаторики и теории графов. При возникновении проблем в этой области рекомендуется обратиться к соответствующей литературе.

В процессе освоения данной дисциплины студенту необходимо:

  1. изучить конспект лекций;
  2. выполнить лабораторные работы (т.е. написать программы в соответствии с заданием);
  3. изучить методические указания и выполнить курсовую работу;
  4. сдать экзамен.

Следует внимательно прочесть следующие замечания:

  1. При изучении курса “Теория языков программирования и методы трансляции” достаточно конспекта лекций и методических материалов к выполнению лабораторных и контрольной работы. Желающие изучить курс более глубоко могут воспользоваться книгами, указанными в списке литературы. При этом возможно изучать и другие книги аналогичной тематики, не вошедшие в данный список.
  2. Прежде чем выполнять каждую лабораторную работу, рекомендуется тщательно разобраться с решением задач по соответствующей теме и попробовать свои силы в их самостоятельном решении.
  3. Для разработки программ к лабораторным работам разрешается использовать любой инструментарий.
  4. Лабораторные работы рекомендуется выполнять в предложенном порядке, т.к. последующие в основном используют материалы предыдущих.
  5. Курсовая работы выполняется на основании лабораторных работ.
  6. Выбор номера варианта курсовой работы осуществляется по последней цифре пароля.
  7. После выполнения всех лабораторных работ и курсовой работы студенту будет предложен экзаменационный билет.
  8. Выполненные задания должны быть высланы со страниц нашего сайта. С порядком отправки выполненных работ можно ознакомиться в инструкции по отправке, доступной по адресу: http://www.do.sibsutis.ru/dist03/newsystem.htm.

Получить консультацию у преподавателя Вы можете, послав письмо по электронной почте (см. раздел “Расписание консультаций”)

Желаем успехов в изучении курса “Теория языков программирования и методы трансляции”!