Engineering a compiler:
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
San Francisco, Calif. [u.a.]
Morgan Kaufmann
2008
|
Ausgabe: | [Nachdr.] |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XXX, 801 S. graph. Darst. |
ISBN: | 155860698X 1558606998 9781558606982 9781558606999 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV024629293 | ||
003 | DE-604 | ||
005 | 20091210 | ||
007 | t | ||
008 | 090924s2008 d||| |||| 00||| eng d | ||
020 | |a 155860698X |9 1-55860-698-X | ||
020 | |a 1558606998 |9 1-55860-699-8 | ||
020 | |a 9781558606982 |9 978-1-55860-698-2 | ||
020 | |a 9781558606999 |9 978-1-55860-699-9 | ||
035 | |a (OCoLC)554947219 | ||
035 | |a (DE-599)BSZ28590664X | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
049 | |a DE-83 |a DE-634 |a DE-703 |a DE-355 | ||
082 | 0 | |a 005.453 | |
084 | |a ST 255 |0 (DE-625)143629: |2 rvk | ||
100 | 1 | |a Cooper, Keith D. |e Verfasser |0 (DE-588)101254401X |4 aut | |
245 | 1 | 0 | |a Engineering a compiler |c Keith D. Cooper ; Linda Torczon |
250 | |a [Nachdr.] | ||
264 | 1 | |a San Francisco, Calif. [u.a.] |b Morgan Kaufmann |c 2008 | |
300 | |a XXX, 801 S. |b graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 0 | 7 | |a Übersetzerbau |0 (DE-588)4121803-6 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Compiler |0 (DE-588)4148248-7 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Übersetzerbau |0 (DE-588)4121803-6 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a Compiler |0 (DE-588)4148248-7 |D s |
689 | 1 | |8 1\p |5 DE-604 | |
700 | 1 | |a Torczon, Linda |e Verfasser |4 aut | |
856 | 4 | 2 | |m Digitalisierung UB Bayreuth |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=018600910&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-018600910 | ||
883 | 1 | |8 1\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk |
Datensatz im Suchindex
_version_ | 1804140652538101760 |
---|---|
adam_text | Contents
About the Authors
iv
About the Cover
viii
Preface
xxi
CHAPTER! Overview of Compilation
1
1.1
Introduction
1
1.2
Why Study Compiler Construction?
3
1.3
The Fundamental Principles of Compilation
4
1.4
Compiler Structure
5
1.5
High-Level View of Translation
8
1.5.1
Understanding the Input
8
1.5.2
Creating and Maintaining the Run-Time Environment
13
1.5.3
Improving the Code
15
1.5.4
Creating the Output Program
16
1.6
Desirable Properties of a Compiler
23
1.7
Summary and Perspective
24
Chapter
2
Scanning
27
2.1
Introduction
27
2.2
Recognizing Words
2.2.1
A Formalism for Recognizers
31
2.2.2
Recognizing More-Complex Words
33
2.2.3
Automating Scanner Construction
35
29
IX
χ
Contents
2.3
Regular
Expressions
36
2.3.1
Formalizing the Notation
37
2.3.2
Examples
39
2.3.3
Properties of REs
42
2.4
From Regular Expression to Scanner and Back
44
2.4.1
Nondeterministic Finite Automata
45
2.4.2
Regular Expression to NFA: Thompson s Construction
48
2.4.3
NFA to DFA: The Subset Construction
51
2.4.4
DFA to Minimal DFA:
Hopcrofťs
Algorithm
55
2.4.5
DFA to Regular Expression
59
2.4.6
Using a DFA as a Recognizer
60
2.5
Implementing Scanners
61
2.5.1
Table-Driven Scanners
62
2.5.2
Direct-Coded Scanners
64
2.5.3
Handling Keywords
65
2.5.4
Specifying Actions
65
2.6
Advanced Topics
67
2.7
Summary and Perspective
71
Chapter
3
Parsing
73
3.1
Introduction
73
3.2
Expressing Syntax
74
3.2.1
Context-Free Grammars
75
3.2.2
Constructing Sentences
79
3.2.3
Encoding Meaning into Structure
83
3.2.4
Discovering a Specific Derivation
86
3.2.5
Context-Free Grammars versus Regular Expressions
87
3.3
Тор
-Down
Parsing
89
3.3.1
Example
90
3.3.2
Complications in Top-Down Parsing
94
3.3.3
Eliminating Left Recursion
94
3.3.4
Eliminating the Need to Backtrack
97
3.3.5
Top-Down Recursive-Descent Parsers
101
3.4
Bottom-Up Parsing
107
3.4.1
Shift-Reduce Parsing
108
Contents xi
3.4.2
Finding Handles
112
3.4.3
LR(1) Parsers
115
3.5
Building LR(1) Tables
120
3.5.1
LR(1) Items
121
3.5.2
Constructing the Canonical Collection
122
3.5.3
Filling in the Tables
127
3.5.4
Errors in the Table Construction
129
3.6
Practical Issues
133
3.6.1
Error Recovery
134
3.6.2
Unary Operators
135
3.6.3
Handling Context-Sensitive Ambiguity
136
3.6.4
Left versus Right Recursion
138
3.7
Advanced Topics
140
3.7.1
Optimizing a Grammar
141
3.7.2
Reducing the Size of LR(1) Tables
143
3.8
Summary and Perspective
147
CHAPTER
4
Context-Sensitive Analysis
151
4.1
Introduction
151
4.2
An Introduction to Type Systems
154
4.2.1
The Purpose of Type Systems
154
4.2.2
Components of a Type System
160
4.3
The Attribute-Grammar Framework
171
4.3.1
Evaluation Methods
175
4.3.2
Circularity
176
4.3.3
Extended Examples
177
4.3.4
Problems with the Attribute-Grammar Approach
185
4.4
Ad Hoc Syntax-Directed Translation
188
4.4.1
Implementing Ad Hoc Syntax-Directed Translation
190
4.4.2
Examples
193
4.5
Advanced Topics
202
4.5.1
Harder Problems in Type Inference
202
4.5.2
Changing Associativity
204
4.6
Summary and Perspective
206
xii Contents
Chapter
5
Intermediate Representations
5.1
Introduction
5.2
Taxonomy
5.3
Graphical
1RS
5.3.1
Syntax-Related Trees
213
5.3.2
Graphs
218
5.4
Linear
1RS
5.4.1
Stack-Machine Code
224
5.4.2
Three-Address Code
224
5.4.3
Representing Linear Codes
225
5.5
Static Single-Assignment Form
5.6
Mapping Values to Names
5.6.1
Naming Temporary Values
233
5.6.2
Memory Models
235
5.7
Symbol Tables
5.7.1
Hash Tables
239
5.7.2
Building a Symbol Table
241
5.7.3
Handling Nested Scopes
242
5.7.4
The Many Uses for Symbol Tables
5.8
Summary and Perspective
209
209
210
213
222
228
231
238
246
249
Chapter
6
The Procedure Abstraction
6.1
Introduction
6.2
Control Abstraction
6.3
Name Spaces
6.3.1
Name Spaces of Algol-like Languages
257
6.3.2
Activation Records
262
6.3.3
Name Spaces of Object-Oriented Languages
6.4
Communicating Values between Procedures
6.4.1
Passing Parameters
275
6.4.2
Returning Values
279
6.5
Establishing Addressability
6.5.1
Trivial Base Addresses
280
268
251
251
254
256
275
280
Contents
xiii
6.5.2
Local Variables of Other Procedures
281
6.6
Standardized Linkages
286
6.7
Managing Memory
290
6.7.1
Memory Layout
290
6.7.2
Algorithms to Manage the Heap
295
6.7.3
Implicit Deallocation
299
6.8
Summary and Perspective
305
Chapter
7
Code Shape
307
7.1
Introduction
307
7.2
Assigning Storage Locations
309
7.2.1
Laying Out Data Areas
310
7.2.2
Keeping a Value in a Register
310
7.2.3
Machine Idiosyncrasies
312
7.3
Arithmetic Operators
313
7.3.1
Reducing Demand for Registers
315
7.3.2
Accessing Parameter Values
318
7.3.3
Function Calls in an Expression
319
7.3.4
Other Arithmetic Operators
319
7.3.5
Mixed-Type Expressions
320
7.3.6
Assignment as an Operator
321
7.3.7
Commutativity, Associativity, and Number Systems
321
7.4
Boolean and Relational Operators
322
7.4.1
Representations
323
7.4.2
Hardware Support for Relational Operations
328
7.4.3
Choosing a Representation
332
7.5
Storing and Accessing Arrays
333
7.5.1
Referencing a Vector Element
333
7.5.2
Array Storage Layout
335
7.5.3
Referencing an Array Element
337
7.5.4
Range Checking
343
7.6
Character Strings
344
7.6.1
String Representations
344
7.6.2
String Assignment
345
7.6.3
String Concatenation
349
7.6.4
String Length
349
xiv Contents
7.7
Structure
References
350
7.7.1
Loading and Storing Anonymous Values
351
7.7.2
Understanding Structure Layouts
352
7.7.3
Arrays of Structures
353
7.7.4
Unions and Run-Time Tags
354
7.8
Control-Flow Constructs
355
7.8.1
Conditional Execution
356
7.8.2
Loops and Iteration
359
7.8.3
Case Statements
364
7.8.4
Break Statements
368
7.9
Procedure Calls
368
7.9.1
Evaluating Actual Parameters
369
7.9.2
Procedure-Valued Parameters
370
7.9.3
Saving and Restoring Registers
370
7.9.4
Optimizations for Leaf Procedures
372
7.10
Implementing Object-Oriented Languages
373
7.10.1
Single Class, No Inheritance
373
7.10.2
Single Inheritance
375
7.11
Summary and Perspective
381
Chapter
8
Introduction to Code Optimization
383
8.1
Introduction
383
8.2
Background
386
8.2.1
An Example from UNPACK
387
8.2.2
Considerations for Optimization
388
8.2.3
Opportunities for Optimization
392
8.3
Redundant Expressions
393
8.3.1
Building a Directed Acyclic Graph
394
8.3.2
Value Numbering
398
8.3.3
Lessons from Redundancy Elimination
403
8.4
Scope of Optimization
404
8.4.1
Local Methods
404
8.4.2
Superlocal
Methods
405
8.4.3
Regional Methods
405
8.4.4
Global Methods
407
8.4.5
Whole-Program Methods
407
Contents
xv
8.5
Value Numbering Over Regions Larger Than Basic Blocks
408
8.5.1
Superlocal
Value Numbering
408
8.5.2
Dominator-Based Value Numbering
413
8.6
Global Redundancy Elimination
417
8.6.1
Computing Available Expressions
419
8.6.2
Replacing Redundant Computations
421
8.6.3
Putting It Together
423
8.7
Advanced Topics
424
8.7.1
Cloning to Increase Context
425
8.7.2
Inline Substitution
427
8.8
Summary and Perspective
430
Chapter
9
Data-Flow Analysis
9.1
Introduction
9.2
Iterative Data-Flow Analysis
9.2.1
Live Variables
435
9.2.2
Properties of the Iterative LIVEOUT Solver
444
9.2.3
Limitations on Data-Flow Analysis
447
9.2.4
Other Data-Flow Problems
450
9.3
Static Single-Assignment Form
9.3.1
A Simple Method for Building SSA Form
456
9.3.2
Dominance
457
9.3.3
Placing (^-Functions
463
9.3.4
Renaming
466
9.3.5
Reconstructing Executable Code from SSA Form
9.5
433
433
435
454
474
9.4
Advanced Topics
9.4.1
Structural Data-Flow Algorithms and Reducibility
480
9.4.2
Interprocedural Analysis
Summary and Perspective
483
479
488
Chapter
10
Scalar Optimizations
10.1
Introduction
10.2
A Taxonomy for Transformations
10.2.1
Machine-Independent Transformations
491
491
494
494
xvi Contents
10.2.2
Machine-Dependent Transformations
496
10.3
Example Optimizations
498
10.3.1
Eliminating Useless and Unreachable Code
498
10.3.2
Code Motion
505
10.3.3
Specialization
515
10.3.4
Enabling Other Transformations
518
10.3.5
Redundancy Elimination
523
10.4
Advanced Topics
523
10.4.1
Combining Optimizations
523
10.4.2
Strength Reduction
527
10.4.3
Other Objectives for Optimization
538
10.4.4
Choosing an Optimization Sequence
540
10.5
Summary and Perspective
542
Chapter
11
Instruction Selection
545
11.1
Introduction
545
11.1.1
Building Retargetable Compilers
548
11.2
A Simple Tree-Walk Scheme
552
11.3
Instruction Selection via Tree-Pattern Matching
558
11.3.1
Rewrite Rules
559
11.3.2
Finding a Tiling
565
11.3.3
Tools
568
11.4
Instruction Selection via Peephole Optimization
569
11.4.1
Peephole Optimization
570
11.4.2
Peephole Transformers
578
11.5
Advanced Topics
580
11.5.1
Learning Peephole Patterns
580
11.5.2
Generating Instruction Sequences
581
11.6
Summary and Perspective
582
Chapter
12
Instruction Scheduling
585
12.1
Introduction
585
12.2
The Instruction-Scheduling Problem
587
Contents xvii
12.2.1
Other Measures of Schedule Quality
593
12.2.2
What Makes Scheduling Hard?
593
12.3
List Scheduling
595
12.3.1
Efficiency Concerns
598
12.3.2
Other Priority Schemes
599
12.3.3
Forward versus Backward List Scheduling
600
12.3.4
Why Use List Scheduling?
603
12.4
Advanced Topics
605
12.4.1
Regional Scheduling
605
12.4.2
Cloning for Context
614
12.5
Summary and Perspective
617
Chapter
13
Register Allocation
619
13.1
Introduction
619
13.2
Background Issues
620
13.2.1
Memory versus Registers
621
13.2.2
Allocation versus Assignment
622
13.2.3
Register Classes
623
13.3
Local Register Allocation and Assignment
624
13.3.1
Top-Down Local Register Allocation
625
13.3.2
Bottom-Up Local Register Allocation
626
13.4
Moving Beyond Single Blocks
629
13.4.1
Liveness and Live Ranges
630
13.4.2
Complications at Block Boundaries
631
13.5
Global Register Allocation and Assignment
633
13.5.1
Discovering Global Live Ranges
635
13.5.2
Estimating Global Spill Costs
637
13.5.3
Interferences and the Interference Graph
639
13.5.4
Top-Down Coloring
642
13.5.5
Bottom-Up Coloring
644
13.5.6
Coalescing Live Ranges to Reduce Degree
646
13.5.7
Review and Comparison
648
13.5.8
Encoding Machine Constraints in the
Interference Graph
649
xviii Contents
13.6 Advanced
Topics
13.6.1
Variations on Graph-Coloring Allocation
13.6.2
Harder Problems in Register Allocation
13.7
Summary and Perspective
651
654
651
657
Appendix A iloc
A.1 Introduction
A.2 Naming Conventions
A.3 Individual Operations
A.3.1 Arithmetic
662
A.3.2 Shifts
663
A.3.3 Memory Operations
664
A.3.4 Register-to-Register Copy Operations
665
A.4 An Example
A.5 Control-Flow Operations
A.5.1 Alternate Comparison and Branch Syntax
668
A.5.2 Jumps
669
A.6 Representing SSA Form
659
659
662
662
666
667
670
Appendix
В
Data structures
B.1 Introduction
B.2 Representing Sets
B.2.1 Representing Sets as Ordered Lists
675
B.2.2 Representing Sets as Bit Vectors
677
B.2.3 Representing Sparse Sets
678
B.3 Implementing Intermediate Representations
B.3.1 Graphical Intermediate Representations
679
B.3.2 Linear Intermediate Forms
684
B.4 Implementing Hash Tables
B.4.1 Choosing a Hash Function
688
B.4.2 Open Hashing
689
B.4.3 Open Addressing
691
673
673
674
679
686
Contents
xix
В.4.4
Storing Symbol Records
693
B.4.5 Adding Nested Lexical Scopes
694
B.5 A Flexible Symbol-Table Design
698
Bibliograpy
703
Exercises
725
Index
779
|
any_adam_object | 1 |
author | Cooper, Keith D. Torczon, Linda |
author_GND | (DE-588)101254401X |
author_facet | Cooper, Keith D. Torczon, Linda |
author_role | aut aut |
author_sort | Cooper, Keith D. |
author_variant | k d c kd kdc l t lt |
building | Verbundindex |
bvnumber | BV024629293 |
classification_rvk | ST 255 |
ctrlnum | (OCoLC)554947219 (DE-599)BSZ28590664X |
dewey-full | 005.453 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.453 |
dewey-search | 005.453 |
dewey-sort | 15.453 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | [Nachdr.] |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01671nam a2200433 c 4500</leader><controlfield tag="001">BV024629293</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20091210 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">090924s2008 d||| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">155860698X</subfield><subfield code="9">1-55860-698-X</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1558606998</subfield><subfield code="9">1-55860-699-8</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781558606982</subfield><subfield code="9">978-1-55860-698-2</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781558606999</subfield><subfield code="9">978-1-55860-699-9</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)554947219</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BSZ28590664X</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-83</subfield><subfield code="a">DE-634</subfield><subfield code="a">DE-703</subfield><subfield code="a">DE-355</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.453</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 255</subfield><subfield code="0">(DE-625)143629:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Cooper, Keith D.</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)101254401X</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Engineering a compiler</subfield><subfield code="c">Keith D. Cooper ; Linda Torczon</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">[Nachdr.]</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">San Francisco, Calif. [u.a.]</subfield><subfield code="b">Morgan Kaufmann</subfield><subfield code="c">2008</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XXX, 801 S.</subfield><subfield code="b">graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Übersetzerbau</subfield><subfield code="0">(DE-588)4121803-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Compiler</subfield><subfield code="0">(DE-588)4148248-7</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Übersetzerbau</subfield><subfield code="0">(DE-588)4121803-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="1" ind2="0"><subfield code="a">Compiler</subfield><subfield code="0">(DE-588)4148248-7</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Torczon, Linda</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Bayreuth</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=018600910&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-018600910</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield></record></collection> |
id | DE-604.BV024629293 |
illustrated | Illustrated |
indexdate | 2024-07-09T22:03:23Z |
institution | BVB |
isbn | 155860698X 1558606998 9781558606982 9781558606999 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-018600910 |
oclc_num | 554947219 |
open_access_boolean | |
owner | DE-83 DE-634 DE-703 DE-355 DE-BY-UBR |
owner_facet | DE-83 DE-634 DE-703 DE-355 DE-BY-UBR |
physical | XXX, 801 S. graph. Darst. |
publishDate | 2008 |
publishDateSearch | 2008 |
publishDateSort | 2008 |
publisher | Morgan Kaufmann |
record_format | marc |
spelling | Cooper, Keith D. Verfasser (DE-588)101254401X aut Engineering a compiler Keith D. Cooper ; Linda Torczon [Nachdr.] San Francisco, Calif. [u.a.] Morgan Kaufmann 2008 XXX, 801 S. graph. Darst. txt rdacontent n rdamedia nc rdacarrier Übersetzerbau (DE-588)4121803-6 gnd rswk-swf Compiler (DE-588)4148248-7 gnd rswk-swf Übersetzerbau (DE-588)4121803-6 s DE-604 Compiler (DE-588)4148248-7 s 1\p DE-604 Torczon, Linda Verfasser aut Digitalisierung UB Bayreuth application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=018600910&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis 1\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk |
spellingShingle | Cooper, Keith D. Torczon, Linda Engineering a compiler Übersetzerbau (DE-588)4121803-6 gnd Compiler (DE-588)4148248-7 gnd |
subject_GND | (DE-588)4121803-6 (DE-588)4148248-7 |
title | Engineering a compiler |
title_auth | Engineering a compiler |
title_exact_search | Engineering a compiler |
title_full | Engineering a compiler Keith D. Cooper ; Linda Torczon |
title_fullStr | Engineering a compiler Keith D. Cooper ; Linda Torczon |
title_full_unstemmed | Engineering a compiler Keith D. Cooper ; Linda Torczon |
title_short | Engineering a compiler |
title_sort | engineering a compiler |
topic | Übersetzerbau (DE-588)4121803-6 gnd Compiler (DE-588)4148248-7 gnd |
topic_facet | Übersetzerbau Compiler |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=018600910&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT cooperkeithd engineeringacompiler AT torczonlinda engineeringacompiler |