Program Generators with XML and Java with CD-ROM

  • Authors:
  • Craig Craig Cleaveland;J. Craig Cleaveland

  • Affiliations:
  • -;-

  • Venue:
  • Program Generators with XML and Java with CD-ROM
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

From the Book:PREFACE: PrefaceI've dreamed about writing this book for many years, but it did not turn out as I imagined. XML and Java are recent technologies that did not appear in my dreams. I've been working with program generators and domain engineering for nearly 20 years using primarily C and hand-crafted plain text languages. XML and Java provide a new context for these older technologies and they fit together. It was a joy to retrace the steps I had taken many years ago, and see how much easier and more elegant the trek is using XML and Java.I toyed with the idea of titling the book, "Program Generators for Fun and Profit." Writing a program generator is a lot of fun because instead of just writing a program, you write a program that writes programs. You think about how smart you can make your program generator. Some program generators are called "wizards!" Program generators are also very profitable. They are a critical piece of many software engineering development environments, particularly in the areas of user interfaces, databases, middleware, and language parsers and lexers.Once you've written a couple of program generators, you begin to wonder: Is there a better approach to figuring out what a program generator should do? The answer is yes, but it's been kept a secret. The better approach is called domain engineering, which is a systematic approach that identifies the important elements and requirements in a domain. This information is essential for efficiently building a program generator that meets customer needs.Many computer scientists, including myself, are fascinated with self-referential structures. One such structure isaprogram generator generator. A program generator generator is a program generator that generates program generators. It is a program that writes programs that write programs. Chapter 12 recapitulates some of the work I did at Bell Labs in this area, but this time in a simpler and more elegant style using XML and Java. It is simple enough that anyone can create his or her own program generator generator in a matter of days.