Software Languages: Syntax, Semantics, and Metaprogramming

Software Languages: Syntax, Semantics, and Metaprogramming Front Cover
0 Reviews
424 pages

Book Description

This book identifies, defines and illustrates the fundamental concepts and techniques relevant to applications of software languages in software development. It presents software languages primarily from a software perspective, i.e., it addresses how to parse, analyze, transform, generate, format, and otherwise process software artifacts in different software languages, as they appear in software development. To this end, it covers a wide range of software languages – most notably programming languages, domain-specific languages, modeling languages, exchange formats, and specifically also language definition languages. Further, different languages are leveraged to illustrate software language concepts and techniques. The functional programming language Haskell dominates the book, while the mainstream programming languages Python and are additionally used for illustration.

By doing this, the book collects and organizes scattered knowledge from software language engineering, focusing on application areas such as software analysis (software reverse engineering), software transformation (software re-engineering), software composition (modularity), and domain-specific languages. It is designed as a textbook for independent study as well as for bachelor’s (advanced level) or master’s university courses in Computer Science. An additional website provides complementary material, for example, lecture slides and videos.

This book is a valuable resource for anyone wanting to understand the fundamental concepts and important engineering underlying software languages, allowing them to acquire much of the operational intelligence needed for dealing with software languages in software development practice. This is an important skill set for software engineers, as languages are increasingly permeating software development.

Table of Contents

Chapter 1: The Notion of a Software Language
Chapter 2: A Story of a Domain-Specific Language
Chapter 3: Foundations of Tree- and Graph-Based Abstract
Chapter 4: Representation of Object Programs in Metaprograms
Chapter 5: A Suite of Metaprogramming Scenarios
Chapter 6: Foundations of Textual Concrete Syntax
Chapter 7: Implementation of Textual Concrete Syntax
Chapter 8: A Primer on Operational Semantics
Chapter 9: A Primer on Type
Chapter 10: An Excursion into the Lambda
Chapter 11: An Ode to Compositionality
Chapter 12: A Suite of Metaprogramming Techniques

Book Details

  • Title: Software Languages: Syntax, Semantics, and Metaprogramming
  • Author:
  • Length: 424 pages
  • Edition: 1st ed. 2018
  • Language: English
  • Publisher:
  • Publication Date: 2018-06-19
  • ISBN-10: 3319907980
  • ISBN-13: 9783319907987
Download LinkFormatSize (MB)Upload Date
Download from UsersCloudTrue PDF6.305/17/2018
Download from UsersCloudTrue PDF6.311/19/2018
How to Download? Report Dead Links & Get a Copy