История изменений
Исправление
gh0stwizard,
(текущая версия)
:
BNF - это описание грамматики, по грамматике нельзя определить значение слов или словосочетаний.
Хорошо, что ты это заметил. Движок DSL != DSL. Движок. Движок. Движок-пирожок, через поле как снежок.
Для постановки задачи достаточно сказать напишите движок DSL с использованием BNF.
Сисадмин: разочарование в профессии (комментарий)
конечно, и BNF - не описывает что должна делать каждая конструкция DSL, а всего лишь в каком порядке эти конструкции можно располагать.
В контексте движка это то, что ожидается. Давай объясню подробнее. Движок DSL позволяет писать любые конструкции, создавать любые привязки слово -> действие. С помощью движка DSL пишутся свои мини/микро ЯП. На основе движка DSL можно делать конструкторы DSL, т.е. готовые программы, в которых легко и просто создавать свои ЯП и использовать в своих проектах. Одним из таких конструкторов является для Java MPS. Движок не описывает конечный синтаксис, грамматику, словосочетания и т.д и т.п. новообразовавшегося языка! С движком можно создавать свои DSL, аля конечные реализации своего ЯП. Именно, то, что ты привык ожидать от аббриватуры DSL.
конечно, и в BNF нельзя такое записать, можно записать только «можно нажимать ЛКМ»
Не надо запутываться. BNF это BNF, нажать ЛКМ это нажать ЛКМ. Я не использовал их в одном предложении.
Исходная версия
gh0stwizard,
:
BNF - это описание грамматики, по грамматике нельзя определить значение слов или словосочетаний.
Хорошо, что ты это заметил. Движок DSL != DSL. Движок. Движок. Движок-пирожок, через поле как снежок.
Для постановки задачи достаточно сказать напишите движок DSL с использованием BNF.
Сисадмин: разочарование в профессии (комментарий)
конечно, и BNF - не описывает что должна делать каждая конструкция DSL, а всего лишь в каком порядке эти конструкции можно располагать.
В контексте движка это то, что ожидается. Давай объясню подробнее. Движок DSL позволяет писать любые конструкции, создавать любые привязки слово -> действие. С помощью движка DSL пишутся свои мини/микро ЯП. На основе движка DSL можно делать конструкторы DSL, т.е. готовые программы, в которых легко и просто создавать свои ЯП и использовать в своих проектах. Одним из таких конструкторов является для Java MPS. Движок не описывает конечный синтаксис, грамматику, словосочетания и т.д и т.п. новообразовавшегося языка!
конечно, и в BNF нельзя такое записать, можно записать только «можно нажимать ЛКМ»
Не надо запутываться. BNF это BNF, нажать ЛКМ это нажать ЛКМ. Я не использовал их в одном предложении.