Szakterület-specifikus nyelv
Ezt a szócikket össze kellene dolgozni a Doménspecifikus nyelv szócikkel. |
A szoftverfejlesztés és a szakterületi tervezés (angolul domain engineering) területén a szakterület-specifikus nyelv (angolul domain-specific language, DSL) olyan programozási nyelv vagy leírónyelv, amit egy bizonyos szakterület, problémaosztály, problémafelvetési vagy -megoldási technika számára hoztak létre. A fogalom nem új keletű, mindig is léteztek speciális célú programozási nyelvek, illetve modellezési/specifikációs nyelvek, de a kifejezést a szakterület-specifikus modellezés elterjedése tette népszerűvé.
A szakterület-specifikus nyelvek közé sorolható a gyermekek számára készült Logo, a Verilog és VHDL hardverleíró nyelvek, az R, S és Q statisztikai programozási nyelvek, Mata mátrixprogramozáshoz, Mathematica és Maxima a szimbolikus matematikai feladatokhoz, számolótábla-képletek és -makrók, az SQL a relációs adatbázisok lekérdezéseihez, YACC nyelvtanok parser írásához, reguláris kifejezések lexikális elemzéshez, a Generic Eclipse Modeling System, Csound, digitális hangszintetizáláshoz, a Graphviz és a GrGen, amik gráfok manipulációját támogatják.
Az ellentéte lehet:
- az általános célú programozási nyelv, mint a C vagy a Java,
- vagy egy általános célú modellezési nyelv, mint a Unified Modeling Language (UML).
Egy szakterület-specifikus nyelv (és a támogató szoftverkörnyezet) létrehozása gyümölcsöző lehet, ha lehetővé teszi egy sajátos problémakör az addig létező programozási nyelvekkel lehetségesnél világosabb kifejtését, és ez a problémakör elégségesen gyakran megjelenik. A nyelvorientált programozási (language-oriented programming) módszerben speciális célú nyelvek létrehozása egy-egy probléma kifejezésére részét képezi a szokásos problémamegoldó folyamatnak.
Fordítás
szerkesztés- Ez a szócikk részben vagy egészben a Domain-specific language című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.