The interpretation of object oriented programming languages:
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
London [u.a.]
Springer
2002
|
Ausgabe: | 2. ed. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XIV, 290 S. graph. Darst. |
ISBN: | 1852335475 |
Internformat
MARC
LEADER | 00000nam a22000008c 4500 | ||
---|---|---|---|
001 | BV013842436 | ||
003 | DE-604 | ||
005 | 20031111 | ||
007 | t | ||
008 | 010724s2002 gw d||| |||| 00||| eng d | ||
016 | 7 | |a 961958146 |2 DE-101 | |
020 | |a 1852335475 |9 1-85233-547-5 | ||
035 | |a (OCoLC)722683463 | ||
035 | |a (DE-599)BVBBV013842436 | ||
040 | |a DE-604 |b ger |e rakddb | ||
041 | 0 | |a eng | |
044 | |a gw |c DE | ||
049 | |a DE-473 |a DE-824 |a DE-29T |a DE-739 |a DE-91G |a DE-83 | ||
050 | 0 | |a QA76.64 | |
082 | 0 | |a 005.1/17 |2 21 | |
084 | |a ST 230 |0 (DE-625)143617: |2 rvk | ||
084 | |a ST 231 |0 (DE-625)143618: |2 rvk | ||
084 | |a ST 240 |0 (DE-625)143625: |2 rvk | ||
084 | |a DAT 315f |2 stub | ||
100 | 1 | |a Craig, Iain D. |e Verfasser |4 aut | |
245 | 1 | 0 | |a The interpretation of object oriented programming languages |c Iain Craig |
246 | 1 | 3 | |a The interpretation of object-oriented programming languages |
250 | |a 2. ed. | ||
264 | 1 | |a London [u.a.] |b Springer |c 2002 | |
300 | |a XIV, 290 S. |b graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 4 | |a Object-oriented programming languages | |
650 | 0 | 7 | |a Objektorientierte Programmiersprache |0 (DE-588)4172311-9 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Objektorientierte Programmiersprache |0 (DE-588)4172311-9 |D s |
689 | 0 | |5 DE-604 | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=009468813&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
943 | 1 | |a oai:aleph.bib-bvb.de:BVB01-009468813 |
Datensatz im Suchindex
_version_ | 1806142869433483264 |
---|---|
adam_text |
Titel: The interpretation of object oriented programming languages
Autor: Craig, Iain D
Jahr: 2002
Contents
1. Introduction.1
1.1 Introduction.1
1.2 Essential Properties of Objects.2
1.3 Objects and Messages.5
1.4 Pure and Impure Languages.7
1.5 Mixed-Paradigm Languages.8
1.6 Organization of this Book.8
2. Class Fundamentals.13
2.1 Introduction.13
2.2 Classes.15
2.3 Instances.19
2.4 Slots and Methods.21
2.5 Slot Access.22
2.6 Visibility and Accessibility.24
2.7 Instance Creation .29
2.8 Inheritance.32
2.8.1 Introduction.32
2.8.2 Definition of Inheritance .33
2.9 Abstract Classes .38
2.10 Iterators .42
2.11 Part Objects.46
3. Prototype and Actor Languages.53
3.1 Introduction.53
3.2 Prototype Languages .53
3.2.1 The Concept of the Prototype.54
3.2.2 Slots and Methods.59
3.2.3 Message Passing .60
3.2.4 Creating New Objects .61
3.2.5 Delegation and Shared Structure.62
3.3 Methods in Prototype Languages.66
3.4 Actor Languages.67
3.4.1 Introduction.67
XII
Contents
3.4.2 Actors. 68
3.4.3 Extensions to the Actor Concept. 72
4. Inheritance and Delegation. 77
4.1 Introduction.77
4.2 Interpretations of Inheritance.78
4.3 Inheritance as Subtyping.79
4.4 Inheritance as Code Sharing^,.80
4.5 Single Inheritance.S3
4.6 Calling More Abstract Methods. - ¦ 85
4.7 Multiple Inheritance.91
4.8 Multiple Inheritance Graph Shape.93
4.9 Approaches to Multiple Inheritance.98
4.9.1 Tree Inheritance. 99
4.9.2 Graph Inheritance.100
4.9.3 Linearized Inheritance.102
4.10 Implemented Multiple Inheritance Techniques.104
4.10.1 The CLOS Search Method.104
4.10.2 Multiple Inheritance in C++ .105
4.10.3 Multiple Inheritance in Eiffel .106
4.11 Mixin Classes.109
4.12 Alternatives to Multiple Inheritance.Ill
4.12.1 Perspectives .Ill
4.12.2 Interfaces in Java.112
4.13 Delegation and Prototypes.113
4.14 Aggregation.115
5. Methods.119
5.1 Introduction.119
5.2 Methods and Objects.121
5.3 Object Constructors and Methods.123
5.4 Environments and Closures.125
5.4.1 Introduction.125
5.4.2 Environments: A More Formal Definition.126
5.4.3 Blocks in Smalltalk and SELF.128
5.4.4 Block Structure in Beta.132
5.4.5 Higher-Order Methods.132
5.5 Methods and Inheritance.
5.5.1 Method Hierarchies in Theta.135
5.5.2 Method Combination in CLOS.136
5.6 Static and Dynamic Binding.I37
Contents XIII
6. Types I: Types and Objects .143
6.1 Introduction.143
6.2 Inheritance and Types.145
6.2.1 Telling What the Type Is.147
6.3 Polymorphism .151
6.3.1 Signatures.151
6.4 Genericity.153
6.5 Overloading and Overriding.156
6.6 Languages with Root Classes .160
6.7 Polyadicity and Default Parameters.161
6.7.1 Variance.162
6.8 Downcasting and Subtypes .165
6.9 Review.167
7. Types II: Types and Objects—Alternatives.169
7.1 Introduction.'.169
7.2 Types and Implementations.169
7.3 Hiding Implementation Details.174
7.4 Classes and Type Operations .177
7.5 Containers and Objects.180
8. Reflection .183
8.1 Introduction.183
8.2 Class and Meta Class.185
8.3 Meta Class and Reflection.187
8.3.1 Introduction.187
8.3.2 Redefinition of Instance Creation Methods.188
8.3.3 Redefinition of Inheritance Methods.190
8.3.4 Redefinition of Method Call Protocols .190
8.3.5 Slots as Objects: An Example of Reification .191
8.3.6 Other Examples.192
8.4 Meta-Object Protocols.194
8.5 Self Representation, Abstract Syntax and Abstract Classes . 195
8.6 Reflection in Java.197
8.7 Reflection in Prototype-based Languages.198
8.8 Prospects for the Future.201
9. C#.203
9.1 Introduction.203
9.2 Classes and Instances.204
9.2.1 Class and Instance Variables.205
9.2.2 Access Levels.205
9.2.3 Data and Method Access Modifiers.206
9.2.4 Instance Creation .206
9.2.5 Static Constructors.208
XIV Contents
9.2.6 Finalization and Destruction.208
9.2.7 Dot Notation and Member Access.209
9.2.8 Abstract Classes .209
9.2.9 Indexers.210
9.2.10 Self Reference.211
9.3 Inheritance.211
9.3.1 Calling Base-Class Constructors.212
9.3.2 Interfaces .213
9.4 Methods and Operators.216
9.4.1 Dispatch.216
9.4.2 The Base Keyword.217
9.4.3 Parameter Annotations .218
9.4.4 Properties.220
9.4.5 Delegates.222
9.4.6 Operator Overloading.223
9.5 Polymorphism and Types.225
9.5.1 Structs.225
9.5.2 Type Unification.226
9.6 Base Class Library .228
A. BeCecil.231
A.l Programming Standard OO Mechanisms.232
A.2 Syntactic Sugar.237
A.3 A Small Example.237
A.4 Concluding Remarks.238
B. Mixed-Paradigm Languages .239
B.l Introduction.239
B.2 Functional Programming: An Overview .241
B.2.1 Control Structures and Semantics.245
B.2.2 Evaluation Strategies.246
B.2.3 Higher-Order Functions.250
B.2.4 Hindley-Milner Type Inference.253
B.2.5 Syntactic Sugar.254
B.3 An Impure Language .256
B.3.1 The Object-Oriented Component.257
B.3.2 The Functional Component.267
B.4 Review.274
References.280
Index.287 |
any_adam_object | 1 |
author | Craig, Iain D. |
author_facet | Craig, Iain D. |
author_role | aut |
author_sort | Craig, Iain D. |
author_variant | i d c id idc |
building | Verbundindex |
bvnumber | BV013842436 |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.64 |
callnumber-search | QA76.64 |
callnumber-sort | QA 276.64 |
callnumber-subject | QA - Mathematics |
classification_rvk | ST 230 ST 231 ST 240 |
classification_tum | DAT 315f |
ctrlnum | (OCoLC)722683463 (DE-599)BVBBV013842436 |
dewey-full | 005.1/17 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.1/17 |
dewey-search | 005.1/17 |
dewey-sort | 15.1 217 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 2. ed. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a22000008c 4500</leader><controlfield tag="001">BV013842436</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20031111</controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">010724s2002 gw d||| |||| 00||| eng d</controlfield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">961958146</subfield><subfield code="2">DE-101</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1852335475</subfield><subfield code="9">1-85233-547-5</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)722683463</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV013842436</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="044" ind1=" " ind2=" "><subfield code="a">gw</subfield><subfield code="c">DE</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-473</subfield><subfield code="a">DE-824</subfield><subfield code="a">DE-29T</subfield><subfield code="a">DE-739</subfield><subfield code="a">DE-91G</subfield><subfield code="a">DE-83</subfield></datafield><datafield tag="050" ind1=" " ind2="0"><subfield code="a">QA76.64</subfield></datafield><datafield tag="082" ind1="0" ind2=" "><subfield code="a">005.1/17</subfield><subfield code="2">21</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 230</subfield><subfield code="0">(DE-625)143617:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 231</subfield><subfield code="0">(DE-625)143618:</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 315f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Craig, Iain D.</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">The interpretation of object oriented programming languages</subfield><subfield code="c">Iain Craig</subfield></datafield><datafield tag="246" ind1="1" ind2="3"><subfield code="a">The interpretation of object-oriented programming languages</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">2. ed.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">London [u.a.]</subfield><subfield code="b">Springer</subfield><subfield code="c">2002</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XIV, 290 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=" " ind2="4"><subfield code="a">Object-oriented programming languages</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Objektorientierte Programmiersprache</subfield><subfield code="0">(DE-588)4172311-9</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Objektorientierte Programmiersprache</subfield><subfield code="0">(DE-588)4172311-9</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</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=009468813&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-009468813</subfield></datafield></record></collection> |
id | DE-604.BV013842436 |
illustrated | Illustrated |
indexdate | 2024-08-01T00:27:46Z |
institution | BVB |
isbn | 1852335475 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-009468813 |
oclc_num | 722683463 |
open_access_boolean | |
owner | DE-473 DE-BY-UBG DE-824 DE-29T DE-739 DE-91G DE-BY-TUM DE-83 |
owner_facet | DE-473 DE-BY-UBG DE-824 DE-29T DE-739 DE-91G DE-BY-TUM DE-83 |
physical | XIV, 290 S. graph. Darst. |
publishDate | 2002 |
publishDateSearch | 2002 |
publishDateSort | 2002 |
publisher | Springer |
record_format | marc |
spelling | Craig, Iain D. Verfasser aut The interpretation of object oriented programming languages Iain Craig The interpretation of object-oriented programming languages 2. ed. London [u.a.] Springer 2002 XIV, 290 S. graph. Darst. txt rdacontent n rdamedia nc rdacarrier Object-oriented programming languages Objektorientierte Programmiersprache (DE-588)4172311-9 gnd rswk-swf Objektorientierte Programmiersprache (DE-588)4172311-9 s DE-604 HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=009468813&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Craig, Iain D. The interpretation of object oriented programming languages Object-oriented programming languages Objektorientierte Programmiersprache (DE-588)4172311-9 gnd |
subject_GND | (DE-588)4172311-9 |
title | The interpretation of object oriented programming languages |
title_alt | The interpretation of object-oriented programming languages |
title_auth | The interpretation of object oriented programming languages |
title_exact_search | The interpretation of object oriented programming languages |
title_full | The interpretation of object oriented programming languages Iain Craig |
title_fullStr | The interpretation of object oriented programming languages Iain Craig |
title_full_unstemmed | The interpretation of object oriented programming languages Iain Craig |
title_short | The interpretation of object oriented programming languages |
title_sort | the interpretation of object oriented programming languages |
topic | Object-oriented programming languages Objektorientierte Programmiersprache (DE-588)4172311-9 gnd |
topic_facet | Object-oriented programming languages Objektorientierte Programmiersprache |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=009468813&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT craigiaind theinterpretationofobjectorientedprogramminglanguages |