Implementing Domain-Specific Languages with Xtext and Xtend Front Cover

Implementing Domain-Specific Languages with Xtext and Xtend

  • Length: 342 pages
  • Edition: 1
  • Publisher:
  • Publication Date: 2013-08-21
  • ISBN-10: 1782160302
  • ISBN-13: 9781782160304
  • Sales Rank: #3136515 (See Top 100 Books)
Description

Learn how to implement a DSL with Xtext and Xtend using easy-to-understand examples and best practices

Overview

  • Learn to quickly develop a domain-specific language with Xtext
  • Implement any aspect of a DSL using Xtend, a fully featured Java-like programming language
  • Discover how to test a DSL implementation and how to customize runtime and IDE aspects of the DSL

In Detail

Xtext is an open source Eclipse framework for implementing domain-specific languages together with its IDE functionalities. It lets you implement languages really quickly, and, most of all, it covers all aspects of a complete language infrastructure, starting from the parser, code generator, interpreter, and more.

“Implementing Domain-Specific Languages with Xtext and Xtend” will teach you how to develop a DSL with Xtext, an Eclipse framework for implementing domain-specific languages. The chapters are like tutorials that describe the main concepts of Xtext such as grammar definition, validation, code generation, customizations, and many more, through uncomplicated and easy-to-understand examples.

Starting with briefly covering the features of Xtext that are involved in a DSL implementation, including integration in an IDE, the book will then introduce you to Xtend as this language will be used in all the examples throughout the book. We then proceed by explaining the main concepts of Xtext, such as validation, code generation, and customizations of runtime and UI aspects. By the end of the book, you will have learned how to test a DSL implemented in Xtext with Junit, in order to follow a test-driven development strategy that will help the developer implement maintainable code that is much faster and cleaner.

A test-driven approach is used throughout the book when presenting advanced concepts such as type checking and scoping. The book also shows you how to build and release a DSL so that it can be installed in Eclipse, and gives you hints on how to build the DSL headlessly in a continuous integration server.

“Implementing Domain-Specific Languages with Xtext and Xtend” aims to complement the official Xtext documentation to explain the main concepts through simplified examples and to teach the best practices for a DSL implementation in Xtext. It is a Beginner’s Guide which should set you up for professional development DSL and its Eclipse IDE tooling.

What you will learn from this book

  • Learn to write an Xtext grammar for a DSL
  • Use Xtend as an alternative to Java to write cleaner, easier-to-read, and more maintainable code
  • Write constraint checks for a DSL using the validator mechanism
  • Learn how to write a code generator and an interpreter for a DSL
  • Discover how automatic symbol resolution works in Xtext and how to customize it
  • Build and deploy a DSL implementation so that others can install it
  • Get well versed with the typical Xtext development workflow

Approach

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.

Table of Contents

Chapter 1: Implementing a DSL
Chapter 2: Creating Your First Xtext Language
Chapter 3: The Xtend Programming Language
Chapter 4: Validation
Chapter 5: Code Generation
Chapter 6: Customizations
Chapter 7: Testing
Chapter 8: An Expression Language
Chapter 9: Type Checking
Chapter 10: Scoping
Chapter 11: Building and Releasing
Chapter 13: Xbase

To access the link, solve the captcha.