Vai al contenuto principale della pagina

Programming language pragmatics / / Michael L. Scott



(Visualizza in formato marc)    (Visualizza in BIBFRAME)

Autore: Scott Michael Lee <1959-> Visualizza persona
Titolo: Programming language pragmatics / / Michael L. Scott Visualizza cluster
Pubblicazione: Amsterdam ; ; Boston, : Elsevier/Morgan Kaufmann Pub., c2009
Edizione: 3rd ed.
Descrizione fisica: 1 online resource (941 p.)
Disciplina: 005.13
Soggetto topico: Programming languages (Electronic computers)
Note generali: Description based upon print version of record.
Nota di bibliografia: Includes bibliographical references (p. 849-865) and index.
Nota di contenuto: Front Cover; Programming Language Pragmatics; Copyright; Table of Contents; Foreword; Preface; Part I: Foundations; Chapter 1. Introduction; 1.1 The Art of Language Design; 1.2 The Programming Language Spectrum; 1.3 Why Study Programming Languages?; 1.4 Compilation and Interpretation; 1.5 Programming Environments; 1.6 An Overview of Compilation; 1.6.1 Lexical and Syntax Analysis; 1.6.2 Semantic Analysis and Intermediate Code Generation; 1.6.3 Target Code Generation; 1.6.4 Code Improvement; 1.7 Summary and Concluding Remarks; 1.8 Exercises; 1.9 Explorations; 1.10 Bibliographic Notes
Chapter 2. Programming Language Syntax2.1 Specifying Syntax: Regular Expressions and Context-Free Grammars; 2.1.1 Tokens and Regular Expressions; 2.1.2 Context-Free Grammars; 2.1.3 Derivations and ParseTrees; 2.2 Scanning; 2.2.1 Generating a Finite Automaton; 2.2.2 Scanner Code; 2.2.3 Table-Driven Scanning; 2.2.4 Lexical Errors; 2.2.5 Pragmas; 2.3 Parsing; 2.3.1 Recursive Descent; 2.3.2 Table-DrivenTop-Down Parsing; 2.3.3 Bottom-Up Parsing; 2.3.4 Syntax Errors; 2.4 Theoretical Foundations; 2.5 Summary and Concluding Remarks; 2.6 Exercises; 2.7 Explorations; 2.8 Bibliographic Notes
Chapter 3. Names, Scopes, and Bindings3.1 The Notion of Binding Time; 3.2 Object Lifetime and Storage Management; 3.2.1 Static Allocation; 3.2.2 Stack-Based Allocation; 3.2.3 Heap-Based Allocation; 3.2.4 Garbage Collection; 3.3 Scope Rules; 3.3.1 Static Scoping; 3.3.2 Nested Subroutines; 3.3.3 Declaration Order; 3.3.4 Modules; 3.3.5 ModuleTypes and Classes; 3.3.6 Dynamic Scoping; 3.4 Implementing Scope; 3.5 The Meaning of Names within a Scope; 3.5.1 Aliases; 3.5.2 Overloading; 3.5.3 Polymorphism and Related Concepts; 3.6 The Binding of Referencing Environments; 3.6.1 Subroutine Closures
3.6.2 First-ClassValues and Unlimited Extent3.6.3 Object Closures; 3.7 Macro Expansion; 3.8 Separate Compilation; 3.9 Summary and Concluding Remarks; 3.10 Exercises; 3.11 Explorations; 3.12 Bibliographic Notes; Chapter 4. Semantic Analysis; 4.1 The Role of the Semantic Analyzer; 4.2 Attribute Grammars; 4.3 Evaluating Attributes; 4.4 Action Routines; 4.5 Space Management for Attributes; 4.6 Decorating a SyntaxTree; 4.7 Summary and Concluding Remarks; 4.8 Exercises; 4.9 Explorations; 4.10 Bibliographic Notes; Chapter 5. Target Machine Architecture; Part II: Core Issues in Language Design
Chapter 6. Control Flow6.1 Expression Evaluation; 6.1.1 Precedence and Associativity; 6.1.2 Assignments; 6.1.3 Initialization; 6.1.4 Ordering within Expressions; 6.1.5 Short-Circuit Evaluation; 6.2 Structured and Unstructured Flow; 6.2.1 Structured Alternatives to goto; 6.2.2 Continuations; 6.3 Sequencing; 6.4 Selection; 6.4.1 Short-Circuited Conditions; 6.4.2 Case/Switch Statements; 6.5 Iteration; 6.5.1 Enumeration-Controlled Loops; 6.5.2 Combination Loops; 6.5.3 Iterators; 6.5.4 Generators in Icon; 6.5.5 Logically Controlled Loops; 6.6 Recursion; 6.6.1 Iteration and Recursion
6.6.2 Applicative- and Normal-Order Evaluation
Sommario/riassunto: As software rapidly becomes more complex and segmented, it is increasingly important for programmers to have references that can point out common underlying principles, provide guidance making about which of dozens of popular languages to learn, and explain the potentially dizzying jargon.For almost a decade, Michael Scott's classic book has been doing all of the above. His brilliant method of illuminating theoretical topics with practical implementation examples provides two-in-one coverage not found in any other text. After all, what good is knowing all the formalisms of a programmin
Titolo autorizzato: Programming language pragmatics  Visualizza cluster
ISBN: 9786612120930
9781282120938
128212093X
9780080922997
0080922996
Formato: Materiale a stampa
Livello bibliografico Monografia
Lingua di pubblicazione: Inglese
Record Nr.: 9911006499903321
Lo trovi qui: Univ. Federico II
Opac: Controlla la disponibilità qui