Выше по иерархии

 Математика. Пути и Графы. Комбинаторика и перебор

Сортировка

Защита и сокрытие информации. Атаки и взлом

Сжатие информации и кодирование. СRC

Графика и обработка изображений. Фракталы

Поиск в строках, массивах,
последовательностях


Разбор выражений.
Компиляторы и интерпретаторы


Cтруктуры данных.
Хранение информации


AI, ГА, Нейронные сети

Вейвлеты

Игры, и все с ними связанное

Олимпиадные задачи

Разное


Софт: просмотр PS и PDF файлов

   Написать веб-мастеру
   Почитать историю сайта

Разбор выражений. Компиляторы и интерпретаторы.

Разбор и вычисление арифметического выражения
Несколько известных алгоритмов рекурсивного разбора. Вообще говоря, выражение не обязательно арифметическое, а цель - вычисление.

Обpатная польская нотация
Разбор выражений: алгоритм перевода в нее арифметического выражения.

Tail-Recursive Stack Disciplines for an Interpreterpdf
Организация правильной хвостовой рекурсии в интерпретаторе (в константном пространстве).

Representing Type Information in Dynamically Typed Languages
Представление типов данных в языках, которые не дают информации о типе переменной на этапе компиляции. Тип переменной формируется во время работы программы.

Архив статей.

  • Варсанофьев, Дымченко 'Основы компиляции'
    Серебряков 'Лекции по конструированию компиляторов'

  • Два дополняющих друг друга конспекта, где в очень доступной форме описаны алгоритмы грамматического разбора, грамматики, а также YACC(CUP) и его язык.

  • Programming Languages: An Interpreter-Based Approach

  • Описан механизм работы интерпретаторов - в наше время редких, но часто незаменимых инструментов. Есть реализация объектно-ориентированного программирования, и все это - с исходниками на Си.

  • Parsing Techniques: a Practical Guide
  • В очень доступной форме, начиная с азов, рассказывается о парсерах и грамматиках. Рекомендуется для начала, и особенно нематематикам по профессии. С алгоритмами, однако без привязки к конкретному языку программирования.

  • When are Bytecode Faster Then Direct Execution ?
  • Различные способы 'полукомпиляции', используемой в интерпретаторах (напр. Java). Что когда лучше.

  • Compiler Techniques for Code Compaction
  • Новые (2000г) способы оптимизации выполнимого файла при компиляции с целью уменьшения занимаемой им памяти. В результате памяти используется на 30% меньше. Это не архивация.

  • Variables and Parametres as References and Containers
  • Способы представления переменных и типов данных в языках. Они не обязательно статические и предопределены заранее.




Вверх по странице, к оглавлению и навигации