ITMO University
“Programming Technologies” Department



Главная

Новости
 Новости науки
 Важное
 Почетные доктора
 Инновации
 Культура
 Люди
 Разное
 Скартел-Yota
 Стрим
 Смольный
Учебный процесс
 Образование
 Дипломы
 Курсовые проекты
 Лабораторные работы
 Учебные курсы
 Визуализаторы
 Unimod-проекты
 Семинары
 Стипендии
Наука
 События и факты
 Госконтракты
 Статьи
 Диссертации
 Книги
 Презентации
 Свидетельства
 Сотрудничество
Исследования
 Автоматы
 Верификация
 Геном
 Искусственный интеллект
 Генетические алгоритмы
 Движение
 UniMod
 Роботы и агенты
 Нейронные сети
 ФЦП ИТМО-Аалто
 Разное

О нас
 Премии
 Сертификаты и дипломы
 Соревнования по программированию
 Прорыв
 Автографы
 Рецензии

Беллетристика
 Мотивация
 Мысли
Медиа
 Видео
 Фотографии
 Аудио
 Интервью

English
 Home

 Articles
 Posters
 Automata-Based Programming
 Initiatives
 Projects
 Presentations
 UniMod
 UniMod Projects
 Visualizers


Поиск по сайту

Яndex



    / Projects / Joint usage of compiler theory and SWITCH-technology (on the example of development of calculator) (версия для печати)


Joint usage of compiler theory and SWITCH-technology (on the example of development of calculator)



(C) 2003 A.A.Shtuchkin, A.A.Shalyto

Saint-Petersburg State Institute of Fine Mechanics and Optics (Technical University)

From here it is possible to download the full text of documentation in Russian in a PDF-format (275 Kb)
Here is application (84 Kb)
Source texts (7 Kb)

Annotation

A number of problems appear when the compiler theory [1] is used in practice. These problems could be eliminated combining compiler theory with SWITCH-technology [2, 3], which is based upon using finite automata.

Let's count some of the problems, which can be eliminated using this technology.

In paper [1], like in other papers on compiler theory [4], only basics on compiler design are stated, but the transition from compiler project to its source code lacks formalism.

Another problem is that algorithms used in compiler designing are described in terms of natural or some pseudo-language. It can be done more effectively using finite automata.

Using SWITCH-technology this problems could be removed.

  • Joint usage of compiler theory and SWITCH-technology makes it possible to combine mathematical strictness of designing such programs with formal writing source code.
  • Finite automata (in the form of transition graphs) is used on all stages of creating compiler.
  • Compiler development process is fully documented.
  • Source code is rather simple and clear because the structure of each of it's units is isomorphous to the structure of its tie chart and transition graph.
  • Automatic construction of lexical and syntactical analyzers is advisable to do using Lex and Yacc generators, though manual construction - using SWITCH-technology.

This approach is approved on the example of development of calculator. Description you can find in paper [5].

References

  1. A. Aho, R. Seti, D. Ulman. Compilers: Principles, Techniques, and Tools. Addison-Wesley, 1986.
  2. Shalyto A. SWITCH-technology. Algorithmization and programming of logic control problems. SPb.: Science, 1998.
  3. Shalyto A. Tukkel N. From Turing programming to finite automata's. //PC World, 2002, #2.
  4. Legalov A. Translators. Development methods. http://www.softcraft.ru/translat.shtml
  5. B. Stroustrup. The C++ Programming Language (Third edition). Addison-Wesley, 1997.



© 2002—2017 По техническим вопросам сайта: vl.ulyantsev@gmail.com