1 / 8

Постановка задачи

Постановка задачи. Г енератор синтаксических анализаторов под . NET Выбор способа описания грамматики Несколько алгоритмов разбора. Разные алгоритмы разбора. LL ( k или *) с рекурсивным спуском – более удобная отладка, медленнее работает

declan
Download Presentation

Постановка задачи

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Постановка задачи • Генератор синтаксических анализаторов под .NET • Выбор способа описания грамматики • Несколько алгоритмов разбора

  2. Разные алгоритмы разбора • LL(k или *)с рекурсивным спуском – более удобная отладка, медленнее работает • LR(k), LALR – «съедает» леворекурсивные грамматики • GLR – неоднозначные грамматики

  3. Разные типы фронтендов • Возможность читать файлы с описанием трансляции в форматах разных инструментов • Грамматика в нескольких файлах с возможно разными форматами

  4. Общий принцип работы

  5. Архитектура

  6. Решаемые задачи

  7. Полученные результаты • Работающий инструмент • Фронтенды: Yard, Irony, ANTLR • Генераторы: RACC, FParsec, PrettyPrinter • Преобразования: ExpandMeta, ExpandEBNF http://code.google.com/p/recursive-ascent/

  8. Использованные технологии MS • .NET • F#, (F# PowerPack, немного C#) • Visual Studio 2010 • (NUnit)

More Related