The Synthesizer Generator
Springer-Verlag New York Inc.
978-1-4613-9625-3 (ISBN)
1 Introduction.- 1.1 Using Structure Editing to Ensure that Programs Are Syntactically Correct.- 1.2 Using Immediate Computation to Locate Errors in Programs.- 1.3 Using Incremental Code Generation to Support Program Testing.- 1.4 Supporting Program-Development Methodologies.- 1.5 The Need for Incremental Algorithms.- 1.6 Adapting Specifications for Immediate Computation.- 1.7 Generating Language-Based Programming Environments.- 1.8 The Synthesizer Generator.- 2 Demonstration of a Sample Editor.- 3 The Attribute-Grammar Model of Editing.- 4 Specification of a Sample Editor.- 4.1 Abstract Syntax.- 4.2 Attributes and Attribute Equations.- 4.3 Unparsing Schemes.- 4.4 Input Interfaces.- 4.5 Templates and Transformations.- 5 Lists, Optional Elements, and Placeholders.- 5.1 Transient Placeholders.- 5.2 Specifying Lists and Optional Elements in SSL.- 5.3 Sublist Manipulations.- 5.4 Selections of Singleton Sublists Versus Selections of List Elements.- 5.5 Parsing Lists.- 5.6 Attribution Rules for a List’s Completing Term and Placeholder Term.- 6 Defining Hybrid Editors with the Synthesizer Generator.- 6.1 Defining a Language’s Underlying Abstract Syntax.- 6.2 Integration of Text Editing and Structure Editing.- 6.3 Defining Computed Display Representations.- 6.4 Context-Sensitive Translations and Transformations.- 7 Performing Static Inferences with Attributes.- 7.1 Aggregation and Information-Passing Strategies.- 7.2 Using the Attribution Mechanism to Perform Type Inference.- 8 Practical Advice.- 8.1 How to Begin Developing an Editor.- 8.2 Modular Construction of Editor Specifications.- 8.3 Problems That Frequently Arise.- 9 Generating Code Using Attributes.- 9.1 Approaches to Incremental Recompilation.- 9.2 Incremental Recompilation Using Attributes.- 10 InteractiveProgram Verification.- 10.1 An Introductory Example.- 10.2 Generating Verification Conditions.- 10.3 Checking Proofs of Verification Conditions.- 10.4 Automatic Deductive Capabilities.- 11 The Implementation.- 11.1 Basic Organization of the Implementation.- 11.2 Finiteness of Completing Terms.- 11.3 Generating Copy Rules for Upward Remote Attribute Sets.- 11.4 Deferred Reference Counting.- 12 Incremental Attribute Evaluation for Ordered Attribute Grammars.- 12.1 Greedy Evaluation.- 12.2 Distributed-Control Evaluation.- 12.3 Evaluation of Ordered Attribute Grammars by Visit-Sequence Evaluators.- 12.4 Construction of a Visit-Sequence Evaluator.- 12.5 Incremental Updating by Visit-Sequence-Driven Change Propagation.- 12.6 Optimizations for One-to-One Functions.- 12.7 What to Do When a Grammar Fails the Orderedness Test.- Appendix A Syntax of SSL.- Appendix B Invoking the Synthesizer Generator.- Appendix C Abbreviated List of Editor Commands.- C.1 Getting Into and Out of an Editor.- C.2 Changing the Structural Selection by Traversal of the Abstract Syntax Tree.- C.3 Executing Commands.- C.4 Structural Editing.- C.5 Moving the Object with Respect to the Window.- C.6 Using the Locator.- C.7 Textual Editing.- C.8 Changing the Character Selection by Textual Traversal of the Text Buffer.- C.9 Buffers, Selections, and Files.- C.10 Creating and Deleting Windows.- Appendix D Keyboards, Displays, Window Systems, and Mice.- D.1 Keyboards.- D.2 Displays and Window Systems.- D.3 Mice.
Reihe/Serie | Monographs in Computer Science |
---|---|
Zusatzinfo | XIII, 317 p. |
Verlagsort | New York, NY |
Sprache | englisch |
Maße | 155 x 235 mm |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Mathematik / Informatik ► Informatik ► Software Entwicklung | |
Informatik ► Theorie / Studium ► Compilerbau | |
ISBN-10 | 1-4613-9625-5 / 1461396255 |
ISBN-13 | 978-1-4613-9625-3 / 9781461396253 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich