Types and Programming Languages

Cover

A comprehensive introduction to type systems and programming languages.

A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute. The study of type systems--and of programming languages from a type-theoretic perspective--has important applications in software engineering, language design, high-performance compilers, and security.

This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material.

The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.

 

Was andere dazu sagen - Rezension schreiben

Es wurden keine Rezensionen gefunden.

Inhalt

II
1
III
4
IV
9
V
10
VI
12
VII
15
VIII
16
IX
18
CVI
249
CVII
251
CVIII
254
CIX
261
CX
262
CXI
263
CXII
265
CXIII
267

X
19
XI
20
XII
21
XIII
23
XIV
26
XV
29
XVI
32
XVII
34
XVIII
43
XIX
45
XX
46
XXI
47
XXII
49
XXIII
51
XXIV
52
XXV
58
XXVI
68
XXVII
73
XXVIII
75
XXIX
76
XXX
78
XXXI
80
XXXII
83
XXXIII
85
XXXIV
87
XXXV
88
XXXVI
89
XXXVII
91
XXXVIII
92
XXXIX
95
XL
99
XLI
100
XLII
104
XLIII
108
XLIV
109
XLV
111
XLVII
113
XLVIII
115
L
117
LI
118
LII
119
LIII
121
LIV
124
LV
126
LVI
128
LVII
129
LVIII
132
LIX
136
LX
142
LXI
146
LXII
149
LXIII
152
LXIV
153
LXV
159
LXVII
162
LXVIII
165
LXIX
170
LXX
171
LXXI
172
LXXII
173
LXXIII
175
LXXIV
179
LXXV
181
LXXVI
182
LXXVII
188
LXXVIII
191
LXXIX
193
LXXX
200
LXXXI
206
LXXXII
207
LXXXIII
209
LXXXV
210
LXXXVI
213
LXXXVII
218
LXXXVIII
220
LXXXIX
221
XC
222
XCI
225
XCII
228
XCIII
229
XCV
230
XCVI
231
XCVII
233
XCVIII
234
C
235
CI
237
CII
241
CIII
244
CIV
245
CV
247
CXIV
268
CXV
275
CXVI
279
CXVIII
281
CXIX
282
CXX
284
CXXI
286
CXXII
288
CXXIII
290
CXXIV
295
CXXV
298
CXXVI
299
CXXVII
304
CXXVIII
309
CXXIX
311
CXXX
312
CXXXI
315
CXXXII
317
CXXXIII
319
CXXXIV
321
CXXXV
326
CXXXVI
329
CXXXVII
330
CXXXVIII
331
CXXXIX
336
CXL
339
CXLI
340
CXLII
341
CXLIII
344
CXLIV
353
CXLV
354
CXLVI
357
CXLVII
358
CXLVIII
359
CXLIX
360
CL
361
CLI
363
CLII
368
CLIII
377
CLIV
379
CLV
381
CLVI
382
CLVII
383
CLVIII
385
CLIX
386
CLX
389
CLXI
391
CLXII
396
CLXIII
400
CLXIV
406
CLXV
408
CLXVI
411
CLXVII
417
CLXVIII
418
CLXIX
421
CLXX
424
CLXXI
427
CLXXII
432
CLXXIII
435
CLXXIV
436
CLXXV
437
CLXXVI
439
CLXXVII
440
CLXXVIII
445
CLXXIX
449
CLXXX
450
CLXXXI
453
CLXXXII
461
CLXXXIII
462
CLXXXIV
467
CLXXXV
469
CLXXXVI
472
CLXXXVIII
475
CLXXXIX
476
CXC
477
CXCI
479
CXCII
480
CXCIII
481
CXCIV
482
CXCV
485
CXCVI
486
CXCVII
488
CXCVIII
491
CXCIX
493
CC
565
CCI
566
CCII
567
CCIII
605
Urheberrecht

Andere Ausgaben - Alle anzeigen

Häufige Begriffe und Wortgruppen

Über den Autor (2002)

Benjamin C. Pierce is Professor of Computer and Information Science at the University of Pennsylvania.

Bibliografische Informationen