[ANN] IronText Library - парсинг, DSL, PL
От: Sucaba Украина kbohdan@mail.ru
Дата: 13.09.13 02:49
Оценка: 83 (6)
Что такое IronText?
-------------------

IronText — это библиотека для создания DSL и языков программирования под .Net с
низким уровнем сложности, и в то же время, достаточно мощная для создания любых
контекстно-свободных языков.

Ресурсы
-------

Сорсы, примеры, и документация: http://github.com/sucaba/IronTextLibrary/

NuGet: http://www.nuget.org/packages/IronText/

Версия
------

0.9.1.0 (1.0 beta)

Возможности
-----------

— Синтаксические и лексические правила описаны полностью с помощью .Net-овых типов
и пользовательских атрибутов

— Поддерживает создание любых контекстно-свободных языков, включая языки заданные
неоднозначными грамматиками

— Поддержка словарей лексических и синтаксических правил, которые могут быть
использованы в разных языках

— Generic-методы могут быть использованы в качестве "шаблонов правил"

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

— Язык может быть унаследован от другого без доступа к исходному коду
  базового языка.

— Язык может быть вложен в другой язык с совместимыми лексическими правилами

— Встроенная обработка ошибок

— Встроенная отслеживание позиции (строка, столбец)

— Сканер поддерживает переключаемые *режимы* которые позволяют обрабатывать сложные
лексические элементы, такие как вложенные комментарии

Технические детали
------------------

Парсер: LALR1, RNGLR.
Сканер: DFA скомпилировнный в RE2C-подобный .net код.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.