Programowanie językowe - Language-oriented programming

Programowanie zorientowane na język ( LOP ) to paradygmat rozwoju oprogramowania, w którym „język” jest elementem oprogramowania o takim samym statusie jak obiekty, moduły i komponenty, a zamiast rozwiązywania problemów w językach programowania ogólnego przeznaczenia , programista tworzy jeden lub najpierw więcej języków specyficznych dla domeny dla problemu i rozwiązuje problem w tych językach. Programowanie zorientowane na język zostało po raz pierwszy szczegółowo opisane w artykule Martina Warda z 1994 r. Programowanie zorientowane na język , opublikowanym w Software - Concepts and Tools , Vol.15, No.4, s. 147-161, 1994.

Pojęcie

Koncepcja programowania zorientowanego językowo polega na podejściu do uchwycenia wymagań w terminach użytkownika, a następnie próbie stworzenia języka implementacji jak najbardziej izomorficznego z opisami użytkownika, tak aby mapowanie między wymaganiami a implementacją było jak najbardziej bezpośrednie. Miarą bliskości tego izomorfizmu jest „redundancja” języka, definiowana jako liczba operacji edycyjnych potrzebnych do wprowadzenia samodzielnej zmiany wymagań. Nie zakłada się a priori, jaki jest najlepszy język do implementacji nowego języka. Deweloper może raczej wybierać spośród opcji stworzonych przez analizę przepływów informacji — jakie informacje są pozyskiwane, jaka jest ich struktura, kiedy są pozyskiwane, od kogo i co z nimi robi się.

Rozwój

Racket (język programowania) służy do programowania zorientowanego języka pomocniczego. Inne językowe narzędzia warsztatowe , takie jak JetBrains MPS , Kermeta lub Xtext, zapewniają narzędzia do projektowania i wdrażania DSL oraz programowania zorientowanego na język

Zobacz też

Bibliografia

Zewnętrzne linki