Языко-ориентированное программирование

редактировать

Языко-ориентированное программирование (LOP ) - парадигма разработки программного обеспечения, где «язык "является строительным блоком программного обеспечения с тем же статусом, что и объекты, модули и компоненты, и вместо того, чтобы решать проблемы на языках программирования общего назначения, программист создает один или несколько предметно-ориентированных языков Сначала проблема и решает проблему на этих языках. Языко-ориентированное программирование было впервые подробно описано в статье Мартина Уорда «Language Oriented Programming» 1994 г., опубликованной в Software - Concepts and Tools, Vol.15, No. 4, pp 147-161, 1994.

Содержание
  • 1 Концепция
  • 2 Разработка
  • 3 См. Также
  • 4 Ссылки
  • 5 Внешние ссылки
Концепция

Концепция языко-ориентированного программирования использует подход, позволяющий фиксировать требования в терминах пользователя, а затем попытаться создать язык реализации как изоморфный, насколько это возможно описаниям пользователя, чтобы соответствие между требованиями и реализацией было как можно более прямым. Показателем близости этого изоморфизма является «избыточность» языка, определяемая как количество операций редактирования, необходимых для реализации отдельного изменения требований. Априори не предполагается, какой язык является лучшим для реализации нового языка. Скорее, разработчик может выбирать среди вариантов, созданных путем анализа информационных потоков - какая информация собирается, какова ее структура, когда она получена, от кого и что с ней делается.

Разработка

Racket (язык программирования) разработан для поддержки языкового программирования. Другие инструменты language workbench, такие как JetBrains MPS, Kermeta или Xtext, предоставляют инструменты для разработки и реализации DSL и языкового программирования.

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-26 13:08:29
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте