The Synthesizer Generator Reference Manual

  • Thomas W. Reps
  • Tim Teitelbaum

Part of the Texts and Monographs in Computer Science book series (MCS)

Table of contents

  1. Front Matter
    Pages i-xi
  2. Thomas W. Reps, Tim Teitelbaum
    Pages 1-5
  3. Thomas W. Reps, Tim Teitelbaum
    Pages 6-89
  4. Thomas W. Reps, Tim Teitelbaum
    Pages 90-111
  5. Thomas W. Reps, Tim Teitelbaum
    Pages 112-114
  6. Thomas W. Reps, Tim Teitelbaum
    Pages 115-128
  7. Back Matter
    Pages 129-175

About this book

Introduction

The Synthesizer Generator is a system for automating the implementation of language-based editing environments. The editor designer prepares a specification that includes rules defining a language's context-free abstract syn­ tax, context-sensitive relationships, display format, and concrete input syntax. From this specification, the Synthesizer Generator creates a display editor for manipulating objects according to these rules [Reps84]. This volume, The Synthesizer Generator Reference Manual, is intended as the defining document of the system. A companion volume, The Synthesizer Gen­ erator: A System for Constructing Language-Based Editors [Reps88], provides a more tutorial description of the system; it contains numerous examples that illustrate the specification and use of generated editors, as well as chapters that explain important algorithms of the implementation. The Synthesizer Generator is a generalization of our earlier system, the Cor­ nell Program Synthesizer [Teitelbaum81], which was a programming environ­ ment for a specific small dialect of PL/I. It featured a display-oriented, syntax­ directed editor, an incremental compiler, an execution supervisor supporting source-level debugging, and a file system containing syntactically typed pro­ gram fragments. Whereas PL/I was built into the Cornell Program Synthesizer, the Synthesizer Generator accepts a formal language definition as input. Although originally conceived as a tool for creating Synthesizer-like environments for arbitrary pro­ gramming languages, the Synthesizer Generator is more broadly useful. Any textual language with a hierarchical phrase structure grammar is a candidate. vi Preface Interactive theorem proving for formal mathematics and logic, for example, has emerged as a particularly suitable application.

Keywords

Attribut C programming language Debugging logic object programming programming language selection verification

Authors and affiliations

  • Thomas W. Reps
    • 1
  • Tim Teitelbaum
    • 2
  1. 1.Computer Sciences DepartmentUniversity of Wisconsin, MadisonMadisonUSA
  2. 2.Department of Computer ScienceCornell UniversityIthacaUSA

Bibliographic information

  • DOI https://doi.org/10.1007/978-1-4613-9633-8
  • Copyright Information Springer-Verlag New York 1989
  • Publisher Name Springer, New York, NY
  • eBook Packages Springer Book Archive
  • Print ISBN 978-0-387-96910-7
  • Online ISBN 978-1-4613-9633-8
  • Series Print ISSN 0172-603X
  • About this book