000 03635nam a2200373 i 4500
999 _c397949
_d397949
_x1
001 397949
003 ES-MaUEC
005 20240314174455.0
006 a|||| o|||| 00| 0
007 cr nn 008mamaa
008 230201s2023 sz | o |||| 0|eng d
020 _a9783031236693
024 7 _a10.1007/978-3-031-23669-3
_2doi
040 _aES-MaUEC
_bspa
_cES-MaUEC
_dES-MaUEC
050 4 _aQA76.7
_b2023 EB
100 1 _aWąsowski, Andrzej
_c(Professor in computer science)
_eautor
_4http://id.loc.gov/vocabulary/relators/aut
_9689442
245 1 0 _aDomain-Specific Languages :
_bEffective Modeling, Automation, and Reuse
_cby Andrzej Wąsowski, Thorsten Berger
250 _a1st ed 2023
264 1 _aCham
_bSpringer International Publishing
_c2023
300 _a1 recurso en línea
336 _atexto
_btxt
_2rdacontent
337 _aelectrónico
_bc
_2rdamedia
338 _arecurso electrónico
_bcr
_2rdacarrier
347 _atext file
_bPDF
_2rda
520 _aThis textbook describes the theory and the pragmatics of using and engineering high-level software languages - also known as modeling or domain-specific languages (DSLs) - for creating quality software. This includes methods, design patterns, guidelines, and testing practices for defining the syntax and the semantics of languages. While remaining close to technology, the book covers multiple paradigms and solutions, avoiding a particular technological silo. It unifies the modeling, the object-oriented, and the functional-programming perspectives on DSLs. The book has 13 chapters. Chapters 1 and 2 introduce and motivate DSLs. Chapter 3 kicks off the DSL engineering lifecycle, describing how to systematically develop abstract syntax by analyzing a domain. Chapter 4 addresses the concrete syntax, including the systematic engineering of context-free grammars. Chapters 5 and 6 cover the static semantics - with basic constraints as a starting point and type systems for advanced DSLs. Chapters 7 (Transformation), 8 (Interpretation), and 9 (Generation) describe different paradigms for designing and implementing the dynamic semantics, while covering testing and other kinds of quality assurance. Chapter 10 is devoted to internal DSLs. Chapters 11 to 13 show the application of DSLs and engage with simpler alternatives to DSLs in a highly distinguished domain: software variability. These chapters introduce the underlying notions of software product lines and feature modeling. The book has been developed based on courses on model-driven software engineering (MDSE) and DSLs held by the authors. It aims at senior undergraduate and junior graduate students in computer science or software engineering. Since it includes examples and lessons from industrial and open-source projects, as well as from industrial research, practitioners will also find it a useful reference. The numerous examples include code in Scala 3, ATL, Alloy, C#, F#, Groovy, Java, JavaScript, Kotlin, OCL, Python, QVT, Ruby, and Xtend. The book contains as many as 277 exercises. The associated code repository facilitates learning and using the examples in a course.
988 _aSpringer_Computer_2023
650 7 _2embne
_9678605
_aLenguajes de programación
700 1 _9689443
_aBerger, Thorsten
_c(profesor)
856 4 0 _uhttps://go.openathens.net/redirector/universidadeuropea.es?url=https://doi.org/10.1007/978-3-031-23669-3
_zAcceso a este recurso digital (usuarios Universidad Europea de Madrid)
942 _2lcc
_cLE
998 _b01/2024
_dz
_eb
_zSI