Contents

Praise for Software Language Engineering

Background Information

Preface

Foreword

Chapter 1. Why Software Language Engineering?

1.1 An Increasing Number of Languages

1.2 Software Languages

1.3 The Changing Nature of Software Languages

1.4 The Complexity Crisis

1.5 What We Can Learn From ...

1.6 Summary

Chapter 2. Roles in Language Engineering

2.1 Different Processes, Different Actors

2.2 The Language User

2.3 The Language Engineer

2.4 Summary

Chapter 3. Languages and Mograms

3.1 What Is a Language?

3.2 Abstraction Levels and Expressiveness

3.3 Domain-Specific Languages

3.4 Summary

Chapter 4. Elements of a Language Specification

4.1 Language Specification

4.2 Formalisms to Specify Languages

4.3 Summary

Chapter 5. Metamodeling

5.1 Foundations of Metamodeling

5.2 Relation with Model-Driven Approaches

5.3 Summary

Chapter 6. Abstract Syntax

6.1 The Pivotal Role of Abstract Syntax

6.2 Mogram/Language Relationship

6.3 How to Create an Abstract Syntax Model

6.4 Alan: An Example Language

6.5 Alan’s Abstract Syntax Model

6.6 Summary

Chapter 7. Concrete Syntax

7.1 Concrete Syntax and Tool Support

7.2 Concrete Syntax Model

7.3 Summary

Chapter 8. Generating Textual Concrete Syntax

8.1 The Grasland Generator

8.2 The Abstract-to-Concrete Transformation

8.3 The Model-to-BNF Grammar Algorithm

8.4 The Static Semantic Analyzer

8.5 Summary

Chapter 9. Semantics: The Meaning of Language

9.1 Semantics Defined

9.2 Semantics of Software Languages

9.3 Operational Semantics Using Graphs

9.4 Summary

Chapter 10. Translational Semantics: Code Generation

10.1 Code Generation and Language Design

10.2 Building a Code Generator

10.3 Code-Generation Patterns

10.4 Extension Points in the Generated Code

10.5 Other Issues in Code Generation

10.6 Summary

Chapter 11. Combining Multiple Languages

11.1 Multiple Mograms for One Application

11.2 Intermogram References

11.3 Language Interfaces

11.4 Consequences for Language User Tool Set

11.5 Support for Language Evolution

11.6 Conclusion

11.7 Summary

Appendix A. Glossary

Appendix B. References

Index

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.219.224.103