Get Free Shipping on orders over $79
Software Languages : Syntax, Semantics, and Metaprogramming - Ralf Lammel

Software Languages

Syntax, Semantics, and Metaprogramming

By: Ralf Lammel

Hardcover | 28 May 2018

At a Glance

Hardcover


$119.75

or 4 interest-free payments of $29.94 with

 or 

Ships in 7 to 10 business days

This book identifies, defines and illustrates the fundamental concepts and engineering techniques relevant to applications of software languages in software development. It presents software languages primarily from a software engineering 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 engineering concepts and techniques. The functional programming language Haskell dominates the book, while the mainstream programming languages Python and Java 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 principles 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.
Industry Reviews
Selected by Choice magazine as an Outstanding Academic Title for 2019 

"The book's 12 chapters cover a wealth of information by adopting a formal point of view that supplies the rigor needed for such an extensive treatment while offering plenty of self-learning opportunities through exercises and additional references. ... This book is also useful as the first step in a more in-depth exploration of specific topics, such as metaprogramming, as it provides the references needed for a comprehensive literature review. ... Summing Up: Highly recommended. Advanced undergraduates through faculty and professionals." (L. Benedicenti, Choice, Vol. 56 (9), May, 2019)

More in Software Engineering

The Essence of Software Engineering - Cersei Page
Building Microservices : Designing Fine-Grained Systems 2nd Edition - Sam Newman
Typescript Cookbook : Real World Type-Level Programming - Stefan Baumgartner
The Art of Spyro : Reignited Trilogy - Micky Neilson

RRP $75.00

$55.99

25%
OFF
Hacking For Dummies : For Dummies (Computer/Tech) - Kevin Beaver

RRP $49.95

$38.75

22%
OFF
Git : Pocket Guide : A Working Introduction - Richard Silverman

RRP $47.75

$26.75

44%
OFF
Design Patterns : Elements of Reusable Object-Oriented Software - Erich Gamma
Developing Graphics Frameworks with Java and OpenGL - Lee Stemkoski
Coding All-in-One For Dummies : 2nd Edition - Chris Minnick

RRP $69.95

$52.75

25%
OFF
Arduino For Dummies : Blackwell Philosophy Anthologies - John Nussey
Programming TypeScript : Making Your JavaScript Applications Scale - Boris Cherny