OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Среда, 18 Сентябрь, 2019 02:34

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
СообщениеДобавлено: Понедельник, 12 Апрель, 2010 15:02 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Для синтаксического анализа имеется вполне вменяемая теория, есть и всякие утилиты помогающие в создании синтаксических анализаторов (тот же lex/yacc например).

А есть ли что-то для обратной задачи? Т.е. синтаксического синтезатора. Т.е. нечто позволяющее генерировать гарантированно валидный текст с т.з. вот этой вот грамматики.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 19 Декабрь, 2010 19:10 

Зарегистрирован: Понедельник, 22 Март, 2010 13:31
Сообщения: 5
Откуда: Finland
Alexey Veselovsky писал(а):
Для синтаксического анализа имеется вполне вменяемая теория, есть и всякие утилиты помогающие в создании синтаксических анализаторов (тот же lex/yacc например).

А есть ли что-то для обратной задачи? Т.е. синтаксического синтезатора. Т.е. нечто позволяющее генерировать гарантированно валидный текст с т.з. вот этой вот грамматики.
Очень необычное название термина. Как раз недавно появилась публикация, использующая похожую формулировку. А вообще, если я правильно представляю, задача разбора (parsing) потока токенов отличается от его генерации: в первом случае мы имеем поток, в котором, по большому счету, может быть всё, что угодно. Во втором же — абстрактное синтаксическое дерево, процесс получения из которого символьной презентации сводится к его линеаризации.

В проекте Grammatical Framework это является одной из центральных идей: есть один центральный модуль абстрактного синтаксиса и N модулей конкретного синтаксиса для всех поддерживаемых языков, задающих правила линеаризации, которые используются как для разбора, так и для "синтеза" текста.

Если же в вопросе имелась ввиду генерация произвольных текстов программ (например, для тест-вариантов), здесь есть неплохой обзор работ по этой теме, начиная ещё с 70-х годов.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 19 Декабрь, 2010 19:16 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3063
Откуда: Астрахань
Alexey Veselovsky писал(а):
Для синтаксического анализа имеется вполне вменяемая теория, есть и всякие утилиты помогающие в создании синтаксических анализаторов (тот же lex/yacc например).

А есть ли что-то для обратной задачи? Т.е. синтаксического синтезатора. Т.е. нечто позволяющее генерировать гарантированно валидный текст с т.з. вот этой вот грамматики.

Вот мне тоже не попадалось. А тема - важнейшая. В обучающей же среде надо генерить упражнения. Например, нужно учить правильно писАть выражения. Можно, конечно, налепить вручную. Но лучше было бы задать параметры - и пусть генерит. Сейчас пытаемся сделать что-нить похожее.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 20 Декабрь, 2010 07:07 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Возможно, это то, что у САПРовцев активнее отрабатывалось - обычно там называют "структурный синтез", "синтез проектных решений".


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB