Domain Specific Languages
Download Domain Specific Languages full books in PDF, epub, and Kindle. Read online free Domain Specific Languages ebook anywhere anytime directly on your device. Fast Download speed and no annoying ads.
Author |
: Martin Fowler |
Publisher |
: Pearson Education |
Total Pages |
: 796 |
Release |
: 2010-09-23 |
ISBN-10 |
: 9780131392809 |
ISBN-13 |
: 0131392808 |
Rating |
: 4/5 (09 Downloads) |
Synopsis Domain-Specific Languages by : Martin Fowler
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
Author |
: Meinte Boersma |
Publisher |
: Simon and Schuster |
Total Pages |
: 502 |
Release |
: 2024-11-19 |
ISBN-10 |
: 9781617296475 |
ISBN-13 |
: 1617296473 |
Rating |
: 4/5 (75 Downloads) |
Synopsis Building User-Friendly DSLs by : Meinte Boersma
Craft domain-specific languages that empower experts to create software themselves. Domain-specific languages put business experts at the heart of software development. These purpose-built tools let your clients write down their business knowledge and have it automatically translated into working software—no dev time required. They seamlessly bridge the knowledge gap between programmers and subject experts, enabling better communication and freeing you from time-consuming code adjustments. Inside Building User-Friendly DSLs you’ll learn how to: • Build a complete Domain IDE for a car rental company • Implement a projectional editor for your DSL • Implement content assist, type systems, expressions, and versioning language aspects • Evaluate business rules • Work with Abstract Syntax Trees • Reduce notated DSL content in concrete syntax into abstract syntax Building User-Friendly DSLs takes you on a carefully-planned journey through everything you need to create your own DSLs. It focuses on building DSLs that are easy for busy business experts to learn and master. By working through a detailed example of a car rental company, you'll see how to create a custom DSL with a modern and intuitive UI that can replace tedious coding activities. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Here’s the central problem of software development: business users know what they need their apps to do, but they don’t know how to write the code themselves. As a developer, this means you spend a lot of time learning the same domain-specific details your user already knows. Now there’s a way to bridge this gap! You can create a Domain-Specific Language (DSL) that empowers non-technical business users to create and customize their own applications without writing any code. About the book Building User-Friendly DSLs teaches you how to create a complete domain-specific language that looks and works like a web application. These easy-to-use DSLs put the power to create custom software into the hands of business domain experts. As you go, you’ll cover all the essentials, from establishing structure and syntax of your DSL to implementing a user-friendly interface. What's inside • Implement a projectional editor for your DSL • Work with Abstract Syntax Trees • Evaluate business rules About the reader For developers with JavaScript and web development experience. About the author Meinte Boersma is a senior developer and an evangelist of model-driven software development and DSLs. Table of Contents 1 What is a domain-specific language? 2 Representing DSL content as structured data 3 Working with ASTs in code 4 Projecting the AST 5 Editing values in the projection 6 Editing objects in the projection 7 Implementing persistence and transportation of ASTs 8 Generating code from the AST 9 Preventing things from blowing up 10 Managing change 11 Implementing expressions: Binary operations 12 Implementing expressions: Order of operations 13 Implementing a type system 14 Implementing business rules 15 Some topics we didn’t cover
Author |
: Antonio Bucchiarone |
Publisher |
: Springer Nature |
Total Pages |
: 336 |
Release |
: 2021-06-24 |
ISBN-10 |
: 9783030737580 |
ISBN-13 |
: 3030737586 |
Rating |
: 4/5 (80 Downloads) |
Synopsis Domain-Specific Languages in Practice by : Antonio Bucchiarone
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.
Author |
: Marjan Mernik |
Publisher |
: |
Total Pages |
: 351 |
Release |
: 2013 |
ISBN-10 |
: 1466620943 |
ISBN-13 |
: 9781466620940 |
Rating |
: 4/5 (43 Downloads) |
Synopsis Formal and Practical Aspects of Domain-specific Languages by : Marjan Mernik
"This book presents current research on all aspects of domain-specific language for scholars and practitioners in the software engineering fields, providing new results and answers to open problems in DSL research"--
Author |
: Markus Voelter |
Publisher |
: Createspace Independent Pub |
Total Pages |
: 558 |
Release |
: 2013 |
ISBN-10 |
: 1481218581 |
ISBN-13 |
: 9781481218580 |
Rating |
: 4/5 (81 Downloads) |
Synopsis DSL Engineering by : Markus Voelter
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
Author |
: Lorenzo Bettini |
Publisher |
: |
Total Pages |
: 342 |
Release |
: 2013 |
ISBN-10 |
: 1782160302 |
ISBN-13 |
: 9781782160304 |
Rating |
: 4/5 (02 Downloads) |
Synopsis Implementing Domain-Specific Languages with Xtext and Xtend by : Lorenzo Bettini
A step-by-step guide that enables you to quickly implement a DSL with Xtext and Xtend in a test-driven way with the aid of simplified examples.This book is for programmers who want to learn about Xtext and how to use it to implement a DSL (or a programming language) together with Eclipse IDE tooling. It assumes that the user is familiar with Eclipse and its functionality. Existing basic knowledge of a compiler implementation would be useful, though not strictly required, since the book will explain all the stages of the development of a DSL.
Author |
: Ayende Rahien |
Publisher |
: Manning Publications |
Total Pages |
: 0 |
Release |
: 2010 |
ISBN-10 |
: 1933988606 |
ISBN-13 |
: 9781933988603 |
Rating |
: 4/5 (06 Downloads) |
Synopsis DSLs in Boo by : Ayende Rahien
Provides information on creating DSLs for Microsoft .NET using Boo.
Author |
: Thomas Mailund |
Publisher |
: Apress |
Total Pages |
: 257 |
Release |
: 2018-06-23 |
ISBN-10 |
: 9781484235881 |
ISBN-13 |
: 1484235886 |
Rating |
: 4/5 (81 Downloads) |
Synopsis Domain-Specific Languages in R by : Thomas Mailund
Gain an accelerated introduction to domain-specific languages in R, including coverage of regular expressions. This compact, in-depth book shows you how DSLs are programming languages specialized for a particular purpose, as opposed to general purpose programming languages. Along the way, you’ll learn to specify tasks you want to do in a precise way and achieve programming goals within a domain-specific context. Domain-Specific Languages in R includes examples of DSLs including large data sets or matrix multiplication; pattern matching DSLs for application in computer vision; and DSLs for continuous time Markov chains and their applications in data science. After reading and using this book, you’ll understand how to write DSLs in R and have skills you can extrapolate to other programming languages. What You'll Learn Program with domain-specific languages using R Discover the components of DSLs Carry out large matrix expressions and multiplications Implement metaprogramming with DSLs Parse and manipulate expressions Who This Book Is For Those with prior programming experience. R knowledge is helpful but not required.
Author |
: Steve Cook |
Publisher |
: Pearson Education |
Total Pages |
: 602 |
Release |
: 2007-05-24 |
ISBN-10 |
: 9780132701556 |
ISBN-13 |
: 0132701553 |
Rating |
: 4/5 (56 Downloads) |
Synopsis Domain-Specific Development with Visual Studio DSL Tools by : Steve Cook
Domain-Specific Languages (DSLs)--languages geared to specific vertical or horizontal areas of interest--are generating growing excitement from software engineers and architects. DSLs bring new agility to the creation and evolution of software, allowing selected design aspects to be expressed in terms much closer to the system requirements than standard program code, significantly reducing development costs in large-scale projects and product lines. In this breakthrough book, four leading experts reveal exactly how DSLs work, and how you can make the most of them in your environment. With Domain-Specific Development with Visual Studio DSL Tools, you'll begin by mastering DSL concepts and techniques that apply to all platforms. Next, you'll discover how to create and use DSLs with the powerful new Microsoft DSL Tools--a toolset designed by this book's authors. Learn how the DSL Tools integrate into Visual Studio--and how to define DSLs and generate Visual Designers using Visual Studio's built-in modeling technology. In-depth coverage includes Determining whether DSLs will work for you Comparing DSLs with other approaches to model-driven development Defining, tuning, and evolving DSLs: models, presentation, creation, updates, serialization, constraints, validation, and more Creating Visual Designers for new DSLs with little or no coding Multiplying productivity by generating application code from your models with easy-to-use text templates Automatically generating configuration files, resources, and other artifacts Deploying Visual Designers across the organization, quickly and easily Customizing Visual Designers for specialized process needs List of Figures List of Tables Foreword Preface About the Authors Chapter 1 Domain-Specific Development Chapter 2 Creating and Using DSLs Chapter 3 Domain Model Definition Chapter 4 Presentation Chapter 5 Creation, Deletion, and Update Behavior Chapter 6 Serialization Chapter 7 Constraints and Validation Chapter 8 Generating Artifacts Chapter 9 Deploying a DSL Chapter 10 Advanced DSL Customization Chapter 11 Designing a DSL Index
Author |
: Debasish Ghosh |
Publisher |
: Simon and Schuster |
Total Pages |
: 544 |
Release |
: 2010-11-30 |
ISBN-10 |
: 9781638351177 |
ISBN-13 |
: 1638351171 |
Rating |
: 4/5 (77 Downloads) |
Synopsis DSLs in Action by : Debasish Ghosh
Your success—and sanity—are closer at hand when you work at a higher level of abstraction, allowing your attention to be on the business problem rather than the details of the programming platform. Domain Specific Languages—"little languages" implemented on top of conventional programming languages—give you a way to do this because they model the domain of your business problem. DSLs in Action introduces the concepts and definitions a developer needs to build high-quality domain specific languages. It provides a solid foundation to the usage as well as implementation aspects of a DSL, focusing on the necessity of applications speaking the language of the domain. After reading this book, a programmer will be able to design APIs that make better domain models. For experienced developers, the book addresses the intricacies of domain language design without the pain of writing parsers by hand. The book discusses DSL usage and implementations in the real world based on a suite of JVM languages like Java, Ruby, Scala, and Groovy. It contains code snippets that implement real world DSL designs and discusses the pros and cons of each implementation. Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book. What's Inside Tested, real-world examples How to find the right level of abstraction Using language features to build internal DSLs Designing parser/combinator-based little languages