Theories of programming languages:
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Cambridge [u.a.]
Cambridge Univ. Press
2009
|
Ausgabe: | 1. publ., digitally print. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XII, 500 S. |
ISBN: | 9780521106979 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV035472370 | ||
003 | DE-604 | ||
005 | 20131121 | ||
007 | t | ||
008 | 090507s2009 |||| 00||| eng d | ||
020 | |a 9780521106979 |c pbk |9 978-0-521-10697-9 | ||
035 | |a (OCoLC)476906834 | ||
035 | |a (DE-599)BVBBV035472370 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
049 | |a DE-473 |a DE-83 | ||
082 | 0 | |a 005.13 |2 22 | |
084 | |a ST 140 |0 (DE-625)143592: |2 rvk | ||
084 | |a ST 240 |0 (DE-625)143625: |2 rvk | ||
084 | |a DAT 350f |2 stub | ||
084 | |a DAT 555f |2 stub | ||
100 | 1 | |a Reynolds, John C. |e Verfasser |4 aut | |
245 | 1 | 0 | |a Theories of programming languages |c John C. Reynolds |
250 | |a 1. publ., digitally print. | ||
264 | 1 | |a Cambridge [u.a.] |b Cambridge Univ. Press |c 2009 | |
300 | |a XII, 500 S. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 4 | |a Programming languages (Electronic computers) | |
650 | 0 | 7 | |a Theorie |0 (DE-588)4059787-8 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Programmiersprache |0 (DE-588)4047409-4 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Programmiersprache |0 (DE-588)4047409-4 |D s |
689 | 0 | |5 DE-604 | |
689 | 1 | 0 | |a Programmiersprache |0 (DE-588)4047409-4 |D s |
689 | 1 | 1 | |a Theorie |0 (DE-588)4059787-8 |D s |
689 | 1 | |5 DE-604 | |
856 | 4 | 2 | |m Digitalisierung UB Bamberg |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017392013&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-017392013 |
Datensatz im Suchindex
_version_ | 1804138931807059968 |
---|---|
adam_text | Contents
Preface
ix
1
Predicate Logic
1
1.1
Abstract
Syntax 1
1.2
Denotational
Semantics of
Predicate Logic
8
1.3
Validity and Inference
12
1.4
Binding and Substitution
15
2
The Simple Imperative Language
24
2.1
Syntax
24
2.2
Denotational Semantics
26
2.3
Domains and Continuous Functions
29
2.4
The Least Fixed-Point Theorem
35
2.5
Variable Declarations and Substitution
39
2.6
Syntactic Sugar: The for Command
45
2.7
Arithmetic Errors
47
2.8
Soundness and Full Abstraction
48
3
Program Specifications and Their Proofs
54
3.1
Syntax and Semantics of Specifications
55
3.2
Inference Rules
57
3.3
Rules for Assignment and Sequential Composition
57
3.4
Rules for while Commands
63
3.5
Further Rules
66
3.6
Computing Fibonacci Numbers
69
3.7
Fast Exponentiation
71
3.8
Complications and Limitations
74
4
Arrays
81
4.1
Abstract Syntax
81
4.2
Denotational Semantics
83
4.3
Binary Search
85
4.4
Inference Rules for Arrays
90
vi
Contents
4.5
Higher-Order Assertions About Arrays
93
5
Failure, Input-Output, and Continuations
97
5.1
The fail Command
97
5.2
Intermediate Output and a Domain of Sequences
101
5.3
The Physical Argument for Continuity
107
5.4
Products and Disjoint Unions of Predomains
109
5.5
Recursive Domain Isomorphisms 111
5.6
Intermediate Input and a Domain of Resumptions
113
5.7
Continuation Semantics
115
5.8
Continuation Semantics of Extensions
118
6
Transition Semantics
126
6.1
Configurations and the Transition Relation
126
6.2
Inference Rules for the Simple Language
127
6.3
Transition Semantics of fail
131
6.4
Input and Output
132
7
Nondeterminism and Guarded Commands
136
7.1
Syntax and Transition Semantics
137
7.2
Bounded Nondeterminism and
Powerdomains 139
7.3
Semantic Equations
144
7.4
Program Specification and Proof
147
7.5
Weakest Preconditions
149
8
Shared-Variable Concurrency
155
8.1
Concurrent Composition
155
8.2
Critical Regions
157
8.3
Mutual Exclusion and Conditional Critical Regions
159
8.4
Deadlock
161
8.5
Fairness
162
8.6
Resumption Semantics
164
8.7
Transition Traces
165
8.8
Stuttering and Mumbling
171
9
Communicating Sequential Processes
181
9.1
Syntax
181
9.2
Transition Semantics
183
9.3
Possible Restrictions
187
9.4
Examples
188
9.5
Deadlock
189
9.6
Fairness
189
10
The Lambda Calculus
194
10.1
Syntax
196
10.2
Reduction
197
Contents
vii
10.3
Normal-Order Evaluation
10.4
Eager Evaluation
10.5
Denotational Semantics
10.6
Programming in the Lambda Calculus
11
An Eager Functional Language
11.1
Concrete Syntax
11.2
Evaluation Semantics
11.3
Definitions, Patterns, and Recursion
11.4
Lists
11.5
Examples
11.6
Direct Denotational Semantics
11.7
Dynamic Binding
12
Continuations in a Functional Language
12.1
Continuation Semantics
12.2
Continuations as Values
12.3
Continuations as a Programming Technique
12.4
Deriving a First-Order Semantics
12.5
First-Order Semantics Summarized
12.6
Relating First-Order and Continuation Semantics
13
Iswim-like Languages
13.1
Aliasing, References, and States
13.2
Evaluation Semantics
13.3
Continuation Semantics
13.4
Some Syntactic Sugar
13.5
First-Order Semantics
13.6
Examples
13.7
Exceptions
13.8
Backtracking
13.9
Input and Output
13.10
Some Complications
14
A Normal-Order Language
14.1
Evaluation Semantics
14.2
Syntactic Sugar
14.3
Examples
14.4
Direct Denotational Semantics
14.5
Reduction Revisited
14.6
Lazy Evaluation
15
The Simple Type System
15.1
Types, Contexts, and Judgements
15.2
Inference Rules
201
206
208
216
222
222
223
228
231
232
235
242
251
251
255
257
258
264
269
273
273
276
278
282
282
284
287
289
291
293
298
298
301
302
304
306
307
315
316
318
viii Contents
15.3
Explicit Typing
324
15.4
The Extrinsic Meaning of Types
327
15.5
The Intrinsic View
334
15.6
Set-Theoretic Semantics
339
15.7
Recursive Types
341
16
Subtypes and Intersection Types
349
16.1
Inference Rules for Subtyping
349
16.2
Named Products and Sums
352
16.3
Intersection Types
354
16.4
Extrinsic Semantics
358
16.5
Generic Operators
362
16.6
Intrinsic Semantics
365
17
Polymorphism
379
17.1
Syntax and Inference Rules
380
17.2
Polymorphic Programming
383
17.3
Extrinsic Semantics
390
18
Module Specification
398
18.1
Type Definitions
398
18.2
Existential Quantification and Modules
401
18.3
Implementing One Abstraction in Terms of Another
406
19
Algol-like Languages
415
19.1
Data Types and Phrase Types
416
19.2
Phrases and Type Inference Rules
419
19.3
Examples
423
19.4
Arrays and Declarators
426
19.5
A Semantics Embodying the Stack Discipline
428
19.6
The Semantics of Variables
434
19.7
The Semantics of Procedures
436
19.8
Some Extensions and Simplifications
439
Appendix:
Mathematical Background
447
A.I
Sets
448
A.2
Relations
450
A.3
Functions
452
A.4
Relations and Functions Between Sets
456
A.5
More About Products and Disjoint Unions
459
A.6
More About Relations
462
Bibliography
467
Index
483
|
any_adam_object | 1 |
author | Reynolds, John C. |
author_facet | Reynolds, John C. |
author_role | aut |
author_sort | Reynolds, John C. |
author_variant | j c r jc jcr |
building | Verbundindex |
bvnumber | BV035472370 |
classification_rvk | ST 140 ST 240 |
classification_tum | DAT 350f DAT 555f |
ctrlnum | (OCoLC)476906834 (DE-599)BVBBV035472370 |
dewey-full | 005.13 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.13 |
dewey-search | 005.13 |
dewey-sort | 15.13 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 1. publ., digitally print. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01598nam a2200433 c 4500</leader><controlfield tag="001">BV035472370</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20131121 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">090507s2009 |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780521106979</subfield><subfield code="c">pbk</subfield><subfield code="9">978-0-521-10697-9</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)476906834</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV035472370</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakddb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-473</subfield><subfield code="a">DE-83</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.13</subfield><subfield code="2">22</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 140</subfield><subfield code="0">(DE-625)143592:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 240</subfield><subfield code="0">(DE-625)143625:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 350f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 555f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Reynolds, John C.</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Theories of programming languages</subfield><subfield code="c">John C. Reynolds</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">1. publ., digitally print.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Cambridge [u.a.]</subfield><subfield code="b">Cambridge Univ. Press</subfield><subfield code="c">2009</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XII, 500 S.</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=" " ind2="4"><subfield code="a">Programming languages (Electronic computers)</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Theorie</subfield><subfield code="0">(DE-588)4059787-8</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Programmiersprache</subfield><subfield code="0">(DE-588)4047409-4</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Programmiersprache</subfield><subfield code="0">(DE-588)4047409-4</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">Programmiersprache</subfield><subfield code="0">(DE-588)4047409-4</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">Theorie</subfield><subfield code="0">(DE-588)4059787-8</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">Digitalisierung UB Bamberg</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=017392013&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-017392013</subfield></datafield></record></collection> |
id | DE-604.BV035472370 |
illustrated | Not Illustrated |
indexdate | 2024-07-09T21:36:02Z |
institution | BVB |
isbn | 9780521106979 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-017392013 |
oclc_num | 476906834 |
open_access_boolean | |
owner | DE-473 DE-BY-UBG DE-83 |
owner_facet | DE-473 DE-BY-UBG DE-83 |
physical | XII, 500 S. |
publishDate | 2009 |
publishDateSearch | 2009 |
publishDateSort | 2009 |
publisher | Cambridge Univ. Press |
record_format | marc |
spelling | Reynolds, John C. Verfasser aut Theories of programming languages John C. Reynolds 1. publ., digitally print. Cambridge [u.a.] Cambridge Univ. Press 2009 XII, 500 S. txt rdacontent n rdamedia nc rdacarrier Programming languages (Electronic computers) Theorie (DE-588)4059787-8 gnd rswk-swf Programmiersprache (DE-588)4047409-4 gnd rswk-swf Programmiersprache (DE-588)4047409-4 s DE-604 Theorie (DE-588)4059787-8 s Digitalisierung UB Bamberg application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017392013&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Reynolds, John C. Theories of programming languages Programming languages (Electronic computers) Theorie (DE-588)4059787-8 gnd Programmiersprache (DE-588)4047409-4 gnd |
subject_GND | (DE-588)4059787-8 (DE-588)4047409-4 |
title | Theories of programming languages |
title_auth | Theories of programming languages |
title_exact_search | Theories of programming languages |
title_full | Theories of programming languages John C. Reynolds |
title_fullStr | Theories of programming languages John C. Reynolds |
title_full_unstemmed | Theories of programming languages John C. Reynolds |
title_short | Theories of programming languages |
title_sort | theories of programming languages |
topic | Programming languages (Electronic computers) Theorie (DE-588)4059787-8 gnd Programmiersprache (DE-588)4047409-4 gnd |
topic_facet | Programming languages (Electronic computers) Theorie Programmiersprache |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017392013&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT reynoldsjohnc theoriesofprogramminglanguages |