Dekorationsartikel gehören nicht zum Leistungsumfang.
The Denotational Description of Programming Languages
An Introduction
Taschenbuch von M. J. C. Gordon
Sprache: Englisch

53,49 €*

inkl. MwSt.

Versandkostenfrei per Post / DHL

Aktuell nicht verfügbar

Kategorien:
Beschreibung
This book explains how to formally describe programming languages using the techniques of denotational semantics. The presentation is designed primarily for computer science students rather than for (say) mathematicians. No knowledge of the theory of computation is required, but it would help to have some acquaintance with high level programming languages. The selection of material is based on an undergraduate semantics course taught at Edinburgh University for the last few years. Enough descriptive techniques are covered to handle all of ALGOL 50, PASCAL and other similar languages. Denotational semantics combines a powerful and lucid descriptive notation (due mainly to Strachey) with an elegant and rigorous theory (due to Scott). This book provides an introduction to the descriptive techniques without going into the background mathematics at all. In some ways this is very unsatisfactory; reliable reasoning about semantics (e. g. correctness proofs) cannot be done without knowing the underlying model and so learning semantic notation without its model theory could be argued to be pointless. My own feeling is that there is plenty to be gained from acquiring a purely intuitive understanding of semantic concepts together with manipulative competence in the notation. For these equip one with a powerful conceptua1 framework-a framework enabling one to visualize languages and constructs in an elegant and machine-independent way. Perhaps a good analogy is with calculus: for many practical purposes (e. g. engineering calculations) an intuitive understanding of how to differentiate and integrate is all that is needed.
This book explains how to formally describe programming languages using the techniques of denotational semantics. The presentation is designed primarily for computer science students rather than for (say) mathematicians. No knowledge of the theory of computation is required, but it would help to have some acquaintance with high level programming languages. The selection of material is based on an undergraduate semantics course taught at Edinburgh University for the last few years. Enough descriptive techniques are covered to handle all of ALGOL 50, PASCAL and other similar languages. Denotational semantics combines a powerful and lucid descriptive notation (due mainly to Strachey) with an elegant and rigorous theory (due to Scott). This book provides an introduction to the descriptive techniques without going into the background mathematics at all. In some ways this is very unsatisfactory; reliable reasoning about semantics (e. g. correctness proofs) cannot be done without knowing the underlying model and so learning semantic notation without its model theory could be argued to be pointless. My own feeling is that there is plenty to be gained from acquiring a purely intuitive understanding of semantic concepts together with manipulative competence in the notation. For these equip one with a powerful conceptua1 framework-a framework enabling one to visualize languages and constructs in an elegant and machine-independent way. Perhaps a good analogy is with calculus: for many practical purposes (e. g. engineering calculations) an intuitive understanding of how to differentiate and integrate is all that is needed.
Inhaltsverzeichnis
1. Introduction.- 1.1. Syntax, semantics and pragmatics.- 1.2. The purposes of formal semantics.- 1.3. Denotational semantics.- 1.4. Abstract entities and their description.- 2. A first example: the language TINY.- 2.1. Informal syntax of TINY.- 2.2. Informal semantics of TINY.- 2.3. An example.- 2.4. Formal semantics of TINY.- 3. General concepts and notation.- 3.1. Abstract syntax.- 3.2. Sets and domains.- 3.3. Defining domains.- 3.4. Functions.- 4. Denotational description of TINY.- 4.1. Abstract syntax.- 4.2. Semantics.- 5. Standard semantics.- 5.1. Continuations.- 5.2. Locations, stores and environments.- 5.3. Standard domains of values.- 5.4. Blocks, declarations and scope.- 5.5. Standard domains of continuations.- 5.6. Standard semantic functions.- 5.7. Continuation transforming functions.- 5.8. Assignments and L and R values.- 5.9. Procedures and functions.- 5.10 Non standard semantics and concurrency.- 6. A second example: the language SMALL.- 6.1. Syntax of SMALL.- 6.2. Semantics of SMALL.- 6.3. A worked example.- 7. Escapes and jumps.- 7.1. Escapes.- 7.2. Jumps.- 8. Various kinds of procedures and functions.- 8.1. Procedures (or functions) with zero or more parameters.- 8.2. Recursive procedures and functions.- 8.3. Static and dynamic binding.- 8.4. Parameter passing mechanisms.- 8.5. Procedure calling mechanisms.- 8.6. Summary of calling and passing mechanisms.- 8.7. Procedure and function denoting expressions (abstractions).- 8.8. Declaration binding mechanisms.- 9. Data structures.- 9.1. References.- 9.2. Arrays.- 9.3. Records.- 9.4. Data structure valued expressions.- 9.5. Files.- 10. Iteration constructs.- 10.1. repeat C until E.- 10.2. Event loops.- 10.3. For-statements.- 11. Own-variables.- 11.1. The within construct.- 11.2. Different interpretations of ALGOL 60 own-variables.- 11.3. Semantics of own-variables.- 12. Types.- 12.1. Various kinds of types.- 12.2. Well-typed programs and type-checking.- 12.3. The semantics of types.- Appendix: Remarks for instructors and sample exercises.- Sample exercises.- References.- Subject and Author Index.- Symbols.
Details
Erscheinungsjahr: 1987
Fachbereich: Programmiersprachen
Genre: Informatik
Rubrik: Naturwissenschaften & Technik
Medium: Taschenbuch
Seiten: 172
Inhalt: vi
162 S.
ISBN-13: 9780387904337
ISBN-10: 0387904336
Sprache: Englisch
Ausstattung / Beilage: Paperback
Einband: Kartoniert / Broschiert
Autor: Gordon, M. J. C.
Auflage: 1st ed. 1979. 3rd printing
Hersteller: Springer US
Springer New York
Maße: 235 x 155 x 10 mm
Von/Mit: M. J. C. Gordon
Erscheinungsdatum: 19.01.1987
Gewicht: 0,271 kg
preigu-id: 107102252
Inhaltsverzeichnis
1. Introduction.- 1.1. Syntax, semantics and pragmatics.- 1.2. The purposes of formal semantics.- 1.3. Denotational semantics.- 1.4. Abstract entities and their description.- 2. A first example: the language TINY.- 2.1. Informal syntax of TINY.- 2.2. Informal semantics of TINY.- 2.3. An example.- 2.4. Formal semantics of TINY.- 3. General concepts and notation.- 3.1. Abstract syntax.- 3.2. Sets and domains.- 3.3. Defining domains.- 3.4. Functions.- 4. Denotational description of TINY.- 4.1. Abstract syntax.- 4.2. Semantics.- 5. Standard semantics.- 5.1. Continuations.- 5.2. Locations, stores and environments.- 5.3. Standard domains of values.- 5.4. Blocks, declarations and scope.- 5.5. Standard domains of continuations.- 5.6. Standard semantic functions.- 5.7. Continuation transforming functions.- 5.8. Assignments and L and R values.- 5.9. Procedures and functions.- 5.10 Non standard semantics and concurrency.- 6. A second example: the language SMALL.- 6.1. Syntax of SMALL.- 6.2. Semantics of SMALL.- 6.3. A worked example.- 7. Escapes and jumps.- 7.1. Escapes.- 7.2. Jumps.- 8. Various kinds of procedures and functions.- 8.1. Procedures (or functions) with zero or more parameters.- 8.2. Recursive procedures and functions.- 8.3. Static and dynamic binding.- 8.4. Parameter passing mechanisms.- 8.5. Procedure calling mechanisms.- 8.6. Summary of calling and passing mechanisms.- 8.7. Procedure and function denoting expressions (abstractions).- 8.8. Declaration binding mechanisms.- 9. Data structures.- 9.1. References.- 9.2. Arrays.- 9.3. Records.- 9.4. Data structure valued expressions.- 9.5. Files.- 10. Iteration constructs.- 10.1. repeat C until E.- 10.2. Event loops.- 10.3. For-statements.- 11. Own-variables.- 11.1. The within construct.- 11.2. Different interpretations of ALGOL 60 own-variables.- 11.3. Semantics of own-variables.- 12. Types.- 12.1. Various kinds of types.- 12.2. Well-typed programs and type-checking.- 12.3. The semantics of types.- Appendix: Remarks for instructors and sample exercises.- Sample exercises.- References.- Subject and Author Index.- Symbols.
Details
Erscheinungsjahr: 1987
Fachbereich: Programmiersprachen
Genre: Informatik
Rubrik: Naturwissenschaften & Technik
Medium: Taschenbuch
Seiten: 172
Inhalt: vi
162 S.
ISBN-13: 9780387904337
ISBN-10: 0387904336
Sprache: Englisch
Ausstattung / Beilage: Paperback
Einband: Kartoniert / Broschiert
Autor: Gordon, M. J. C.
Auflage: 1st ed. 1979. 3rd printing
Hersteller: Springer US
Springer New York
Maße: 235 x 155 x 10 mm
Von/Mit: M. J. C. Gordon
Erscheinungsdatum: 19.01.1987
Gewicht: 0,271 kg
preigu-id: 107102252
Warnhinweis