The MPS Language Workbench

The MPS Language Workbench PDF Author: Fabien Campagne
Publisher: Fabien Campagne
ISBN:
Category : Computers
Languages : en
Pages : 328

Get Book

Book Description
The MPS Language Workbench, Volume I (third edition). The first volume of the series is both a simple introduction to the JetBrains MPS language workbench and a complete reference manual. The Meta-Programming System (MPS) is a new kind of tool called a language workbench that simply stated makes it easier and more fun to write programs. With traditional programming, it is common to choose one programming language to solve a problem and being limited by this choice. When working with MPS you can use and combine different languages to solve a problem. You can also create simple languages (e.g., Domain Specific Languages) or extend existing ones when the languages available do not exactly meet the evolving needs of the problem at hand. The languages that you create with MPS will integrate nicely with languages developed by others. MPS is open-source and can be obtained from http://jetbrains.com/mps or http://github.com/JetBrains/MPS. This book explains the MPS programming paradigm and gradually introduces the reader to the many features of the MPS platform. This book may yet be the simplest way to discover the MPS language workbench and the powerful new approach to programming that this tool offers. The third edition of this book describes MPS 3.3.

The MPS Language Workbench

The MPS Language Workbench PDF Author: Fabien Campagne
Publisher: Fabien Campagne
ISBN:
Category : Computers
Languages : en
Pages : 328

Get Book

Book Description
The MPS Language Workbench, Volume I (third edition). The first volume of the series is both a simple introduction to the JetBrains MPS language workbench and a complete reference manual. The Meta-Programming System (MPS) is a new kind of tool called a language workbench that simply stated makes it easier and more fun to write programs. With traditional programming, it is common to choose one programming language to solve a problem and being limited by this choice. When working with MPS you can use and combine different languages to solve a problem. You can also create simple languages (e.g., Domain Specific Languages) or extend existing ones when the languages available do not exactly meet the evolving needs of the problem at hand. The languages that you create with MPS will integrate nicely with languages developed by others. MPS is open-source and can be obtained from http://jetbrains.com/mps or http://github.com/JetBrains/MPS. This book explains the MPS programming paradigm and gradually introduces the reader to the many features of the MPS platform. This book may yet be the simplest way to discover the MPS language workbench and the powerful new approach to programming that this tool offers. The third edition of this book describes MPS 3.3.

Domain-Specific Languages in Practice

Domain-Specific Languages in Practice PDF Author: Antonio Bucchiarone
Publisher: Springer Nature
ISBN: 3030737586
Category : Computers
Languages : en
Pages : 336

Get Book

Book Description
This book covers several topics related to domain-specific language (DSL) engineering in general and how they can be handled by means of the JetBrains Meta Programming System (MPS), an open source language workbench developed by JetBrains over the last 15 years. The book begins with an overview of the domain of language workbenches, which provides perspectives and motivations underpinning the creation of MPS. Moreover, technical details of the language underneath MPS together with the definition of the tool’s main features are discussed. The remaining ten chapters are then organized in three parts, each dedicated to a specific aspect of the topic. Part I “MPS in Industrial Applications” deals with the challenges and inadequacies of general-purpose languages used in companies, as opposed to the reasons why DSLs are essential, together with their benefits and efficiency, and summarizes lessons learnt by using MPS. Part II about “MPS in Research Projects” covers the benefits of text-based languages, the design and development of gamification applications, and research fields with generally low expertise in language engineering. Eventually, Part III focuses on “Teaching and Learning with MPS” by discussing the organization of both commercial and academic courses on MPS. MPS is used to implement languages for real-world use. Its distinguishing feature is projectional editing, which supports practically unlimited language extension and composition possibilities as well as a flexible mix of a wide range of textual, tabular, mathematical and graphical notations. The number and diversity of the presented use-cases demonstrate the strength and malleability of the DSLs defined using MPS. The selected contributions represent the current state of the art and practice in using JetBrains MPS to implement languages for real-world applications.

The MPS Language Workbench

The MPS Language Workbench PDF Author: Fabien Campagne
Publisher:
ISBN: 9781533271846
Category :
Languages : en
Pages : 438

Get Book

Book Description
This is a black and white edition of the MPS Language Workbench that combines Volume I and II of the series into a single book.The first volume of the series is both a simple introduction to the JetBrains MPS language workbench and a complete reference manual. This book explains the MPS programming paradigm and gradually introduces the reader to the many features of the MPS platform. The "MPS Language Workbench" may yet be the simplest way to discover MPS and the powerful new approach to programming that this tool offers. The second volume of the series explains how to customize the JetBrains Meta-Programming System (MPS) platform to better integrate it with the needs of your languages. Volume II continues where Volume I ended and discusses more advanced features of the MPS platform. This book includes a detailed example to illustrate the design and implementation of a custom web aspect. This detailed example illustrates how the advanced features of the MPS platform make it possible to design languages suitable to generate complete applications. The Meta-Programming System (MPS) is a new kind of tool called a language workbench that makes it easier and more fun to write programs. With traditional programming, it is common to choose one programming language to solve a problem and being limited by this choice. When working with MPS you can use and combine different languages to solve a problem. You can also create simple languages (e.g., Domain Specific Languages) or extend existing ones when the languages available do not exactly meet the evolving needs of the problem at hand. The languages that you create with MPS will integrate nicely with languages developed by others. MPS is open-source and can be obtained from http://jetbrains.com/mps.

The MPS Language Workbench

The MPS Language Workbench PDF Author: Fabien Campagne
Publisher: Fabien Campagne
ISBN:
Category : Computers
Languages : en
Pages : 289

Get Book

Book Description
The MPS Language Workbench, Volume II (first edition). The second volume of the series explains how to customize the JetBrains Meta-Programming System (MPS) platform to better integrate it with the needs of your languages. Volume II continues where Volume I ended and discusses more advanced features of the MPS platform. This book includes a detailed example to illustrate the design and implementation of a custom web aspect. This detailed example illustrates how the advanced features of the MPS platform make it possible to design languages suitable to generate complete applications. The Meta-Programming System (MPS) is a new kind of tool called a Language Workbench that makes it easier and more fun to write programs. With traditional programming, it is common to choose one programming language to solve a problem and being limited by this choice. When working with MPS you can use and combine different languages to solve a problem. You can also create simple languages (e.g., Domain Specific Languages) or extend existing ones when the languages available do not exactly meet the evolving needs of the problem at hand. The languages that you create with MPS will integrate nicely with languages developed by others. MPS is open-source and can be obtained from http://jetbrains.com/mps (or http://github.com/JetBrains/MPS/).

DSL Engineering

DSL Engineering PDF Author: Markus Voelter
Publisher: Createspace Independent Pub
ISBN: 9781481218580
Category : Computers
Languages : en
Pages : 558

Get Book

Book Description
The definitive resource on domain-specific languages: based on years of real-world experience, relying on modern language workbenches and full of examples. Domain-Specific Languages are programming languages specialized for a particular application domain. By incorporating knowledge about that domain, DSLs can lead to more concise and more analyzable programs, better code quality and increased development speed. This book provides a thorough introduction to DSL, relying on today's state of the art language workbenches. The book has four parts: introduction, DSL design, DSL implementation as well as the role of DSLs in various aspects of software engineering. Part I Introduction: This part introduces DSLs in general and discusses their advantages and drawbacks. It also defines important terms and concepts and introduces the case studies used in the most of the remainder of the book. Part II DSL Design: This part discusses the design of DSLs - independent of implementation techniques. It reviews seven design dimensions, explains a number of reusable language paradigms and points out a number of process-related issues. Part III DSL Implementation: This part provides details about the implementation of DSLs with lots of code. It uses three state-of-the-art but quite different language workbenches: JetBrains MPS, Eclipse Xtext and TU Delft's Spoofax. Part IV DSLs and Software Engineering: This part discusses the use of DSLs for requirements, architecture, implementation and product line engineering, as well as their roles as a developer utility and for implementing business logic. The book is available as a printed version (the one your are looking at) and as a PDF. For details see the book's companion website at http: //dslbook.org

The MPS Language Workbench Volume II

The MPS Language Workbench Volume II PDF Author: Fabien Campagne
Publisher: Createspace Independent Publishing Platform
ISBN: 9781532805370
Category :
Languages : en
Pages : 210

Get Book

Book Description
The second volume of the series explains how to customize the JetBrains Meta-Programming System (MPS) platform to better integrate it with the needs of your languages. Volume II continues where Volume I ended and discusses more advanced features of the MPS platform. This book includes a detailed example to illustrate the design and implementation of a custom web aspect. This detailed example illustrates how the advanced features of the MPS platform make it possible to design languages suitable to generate complete applications. The Meta-Programming System (MPS) is a new kind of tool called a language workbench that makes it easier and more fun to write programs. With traditional programming, it is common to choose one programming language to solve a problem and being limited by this choice. When working with MPS you can use and combine different languages to solve a problem. You can also create simple languages (e.g., Domain Specific Languages) or extend existing ones when the languages available do not exactly meet the evolving needs of the problem at hand. The languages that you create with MPS will integrate nicely with languages developed by others. MPS is open-source and can be obtained from http: //jetbrains.com/mps.

Generic Tools, Specific Languages

Generic Tools, Specific Languages PDF Author: Markus Voelter
Publisher: Createspace Independent Pub
ISBN: 9781500359430
Category : Computers
Languages : en
Pages : 292

Get Book

Book Description
Generic Tools, Specific Languages (GTSL) is an approach for developing tools and applications in a way that supports easier and more meaningful adaptation to specific domains. To achieve this goal, GTSL generalizes programming language IDEs to domains traditionally not addressed by languages and IDEs. At its core, GTSL represents applications as documents/programs/models expressed with suitable languages. Application functionality is provided through an IDE that is aware of the languages and their semantics. The IDE provides editing support, and also directly integrates domain-specific analyses and execution services. Applications and their languages can be adapted to increasingly specific domains using language engineering; this includes developing incremental extensions to existing languages or creating additional, tightly integrated languages. Language workbenches act as the foundation on which such applications are built. mbeddr is an extensible set of integrated languages for embedded software development built using the Generic Tools, Specific Languages approach.

The MPS Language Workbench

The MPS Language Workbench PDF Author: Fabien Campagne
Publisher:
ISBN: 9781497378650
Category :
Languages : en
Pages : 0

Get Book

Book Description


Domain-Specific Languages

Domain-Specific Languages PDF Author: Martin Fowler
Publisher: Pearson Education
ISBN: 0131392808
Category : Computers
Languages : en
Pages : 796

Get Book

Book Description
When carefully selected and used, Domain-Specific Languages (DSLs) may simplify complex code, promote effective communication with customers, improve productivity, and unclog development bottlenecks. In Domain-Specific Languages, noted software development expert Martin Fowler first provides the information software professionals need to decide if and when to utilize DSLs. Then, where DSLs prove suitable, Fowler presents effective techniques for building them, and guides software engineers in choosing the right approaches for their applications. This book’s techniques may be utilized with most modern object-oriented languages; the author provides numerous examples in Java and C#, as well as selected examples in Ruby. Wherever possible, chapters are organized to be self-standing, and most reference topics are presented in a familiar patterns format. Armed with this wide-ranging book, developers will have the knowledge they need to make important decisions about DSLs—and, where appropriate, gain the significant technical and business benefits they offer. The topics covered include: How DSLs compare to frameworks and libraries, and when those alternatives are sufficient Using parsers and parser generators, and parsing external DSLs Understanding, comparing, and choosing DSL language constructs Determining whether to use code generation, and comparing code generation strategies Previewing new language workbench tools for creating DSLs

Model-Driven Software Development

Model-Driven Software Development PDF Author: Markus Völter
Publisher: John Wiley & Sons
ISBN: 111872576X
Category : Computers
Languages : en
Pages : 414

Get Book

Book Description
Model-Driven Software Development (MDSD) is currently a highly regarded development paradigm among developers and researchers. With the advent of OMG's MDA and Microsoft's Software Factories, the MDSD approach has moved to the centre of the programmer's attention, becoming the focus of conferences such as OOPSLA, JAOO and OOP. MDSD is about using domain-specific languages to create models that express application structure or behaviour in an efficient and domain-specific way. These models are subsequently transformed into executable code by a sequence of model transformations. This practical guide for software architects and developers is peppered with practical examples and extensive case studies. International experts deliver: * A comprehensive overview of MDSD and how it relates to industry standards such as MDA and Software Factories. * Technical details on meta modeling, DSL construction, model-to-model and model-to-code transformations, and software architecture. * Invaluable insight into the software development process, plus engineering issues such as versioning, testing and product line engineering. * Essential management knowledge covering economic and organizational topics, from a global perspective. Get started and benefit from some practical support along the way!