Automatically assigned DDC number: 005117

Manually assigned DDC number: 005117

Number of references: 8

Title: Signatures: A C++ Extension for Type Abstraction and Subtype Polymorphism

Author:

Author:

Subject: Gerald Baumgartner,Vincent F. Russo Signatures: A C++ Extension for Type Abstraction and Subtype Polymorphism

Description: C++ uses inheritance as a substitute for subtype polymorphism. We give examples where this makes the type system too inflexible. We then describe a conservative language extension that allows us to define an abstract type hierarchy independent of any implementation hierarchies, to retroactively abstract over an implementation, and to decouple subtyping from inheritance. This extension gives the user more of the flexibility of dynamic typing while retaining the efficiency and security of static typing. With default implementations and views we provide flexible mechanisms for implementing an abstract type by different concrete class types. We first show how our language extension can be implemented in a preprocessor to a C++ compiler, and then detail and analyze the efficiency of an implementation we directly incorporated in the GNU C++ compiler.

Contributor: The Pennsylvania State University CiteSeer Archives

Publisher: unknown

Date: 1995-01-14

Pubyear: 1994

Format: ps

Identifier: http://citeseer.ist.psu.edu/160252.html

Source: http://www.cis.ohio-state.edu/~gb/Papers/TR93-059.ps.gz

Language: en

Relation:

Relation:

Relation:

Relation:

Relation:

Relation:

Relation:

Relation:

Rights: unrestricted

Graph

<?xml   version="1.0"   encoding="UTF-8"?>

<references_metadata>

      <rec   ID="/301796.html"   Type="article"   CiteSeer_Book="ACM   Transactions   on   Programming   Languages   and   Systems"   CiteSeer_Volume="15"   Title="Subtyping   Recursive   Types,">

            <identifier   Org="ISBN:0897917707"   Paper_ID="/301796.html"   Extracted="0897917707"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:1402065841"   Paper_ID="/301796.html"   Extracted="1402065841"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:158488360X"   Paper_ID="/301796.html"   Extracted="158488360X"   DDC="004"   Normalized_DDC="004"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540254358"   Paper_ID="/301796.html"   Extracted="3540254358"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540255931"   Paper_ID="/301796.html"   Extracted="3540255931"   DDC="511.3"   Normalized_DDC="5113"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540419608"   Paper_ID="/301796.html"   Extracted="3540419608"   DDC="511.3"   Normalized_DDC="5113"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:354043366X"   Paper_ID="/301796.html"   Extracted="354043366X"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540543171"   Paper_ID="/301796.html"   Extracted="3540543171"   DDC="511.3"   Normalized_DDC="5113"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540552510"   Paper_ID="/301796.html"   Extracted="3540552510"   DDC="511/.5"   Normalized_DDC="5115"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540552537"   Paper_ID="/301796.html"   Extracted="3540552537"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540578870"   Paper_ID="/301796.html"   Extracted="3540578870"   DDC="005.1/01/5113"   Normalized_DDC="0051015113"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540601600"   Paper_ID="/301796.html"   Extracted="3540601600"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540614400"   Paper_ID="/301796.html"   Extracted="3540614400"   DDC="001.64"   Normalized_DDC="00164"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540617396"   Paper_ID="/301796.html"   Extracted="3540617396"   DDC="005.13/1"   Normalized_DDC="005131"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:354063388X"   Paper_ID="/301796.html"   Extracted="354063388X"   DDC="005.3"   Normalized_DDC="0053"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540664122"   Paper_ID="/301796.html"   Extracted="3540664122"   DDC="004"   Normalized_DDC="004"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540665366"   Paper_ID="/301796.html"   Extracted="3540665366"   DDC="004/.01/5113"   Normalized_DDC="004015113"   Normalized_Weight="0.05555555555555555"   />

            <identifier   Org="ISBN:3540679340"   Paper_ID="/301796.html"   Extracted="3540679340"   DDC="346/.092"   Normalized_DDC="346092"   Normalized_Weight="0.05555555555555555"   />

      </rec>

      <rec   ID="/97149.html"   Type="article"   CiteSeer_Book="ACM   Transactions   on   Programming   Languages   and   Systems"   CiteSeer_Volume="19"   Title="Implementing   Signatures   for   {C}++,"   />

      <rec   ID="/137626.html"   Type="techreport"   CiteSeer_Book=""   CiteSeer_Volume=""   Title="{A   Proposal   to   Study   Type   Systems   for   Computer   Algebra},">

            <identifier   Org="ISBN:3211828443"   Paper_ID="/137626.html"   Extracted="3211828443"   DDC="004.2/1"   Normalized_DDC="00421"   Normalized_Weight="0.5"   />

            <identifier   Org="ISBN:3540573224"   Paper_ID="/137626.html"   Extracted="3540573224"   DDC="006.3"   Normalized_DDC="0063"   Normalized_Weight="0.5"   />

            <identifier   Org="ISBN:3540878262"   Paper_ID="/137626.html"   Extracted="3540878262"   />

      </rec>

      <rec   ID="/6798.html"   Type="article"   CiteSeer_Book="ACM   Computing   Surveys"   CiteSeer_Volume="17"   Title="On   Understanding   Types,   Data   Abstraction,   and   Polymorphism,">

            <identifier   Org="ISBN:026207155X"   Paper_ID="/6798.html"   Extracted="026207155X"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:0262720159"   Paper_ID="/6798.html"   Extracted="0262720159"   DDC="004"   Normalized_DDC="004"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540171878"   Paper_ID="/6798.html"   Extracted="3540171878"   />

            <identifier   Org="ISBN:3540410902"   Paper_ID="/6798.html"   Extracted="3540410902"   DDC="005"   Normalized_DDC="005"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:354043366X"   Paper_ID="/6798.html"   Extracted="354043366X"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540506675"   Paper_ID="/6798.html"   Extracted="3540506675"   DDC="006.3"   Normalized_DDC="0063"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540509402"   Paper_ID="/6798.html"   Extracted="3540509402"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540531629"   Paper_ID="/6798.html"   Extracted="3540531629"   />

            <identifier   Org="ISBN:3540534520"   Paper_ID="/6798.html"   Extracted="3540534520"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540541411"   Paper_ID="/6798.html"   Extracted="3540541411"   />

            <identifier   Org="ISBN:3540552510"   Paper_ID="/6798.html"   Extracted="3540552510"   DDC="511/.5"   Normalized_DDC="5115"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540565175"   Paper_ID="/6798.html"   Extracted="3540565175"   DDC="511.3"   Normalized_DDC="5113"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540569219"   Paper_ID="/6798.html"   Extracted="3540569219"   DDC="005.74"   Normalized_DDC="00574"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540575308"   Paper_ID="/6798.html"   Extracted="3540575308"   DDC="005.75"   Normalized_DDC="00575"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540631720"   Paper_ID="/6798.html"   Extracted="3540631720"   DDC="004/.01/5113"   Normalized_DDC="004015113"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3540651934"   Paper_ID="/6798.html"   Extracted="3540651934"   DDC="004.16"   Normalized_DDC="00416"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:354066677X"   Paper_ID="/6798.html"   Extracted="354066677X"   DDC="005.1/14"   Normalized_DDC="005114"   Normalized_Weight="0.07142857142857142"   />

            <identifier   Org="ISBN:3642005896"   Paper_ID="/6798.html"   Extracted="3642005896"   />

      </rec>

      <rec   ID="/583501.html"   Type="inproceedings"   CiteSeer_Book="Proceedings   of   the   1984   ACM   Conference   on   LISP   and   Functional   Programming"   CiteSeer_Volume=""   Title="Modules   for   {S}tandard   {ML},"   />

      <rec   ID="/577499.html"   Type="inproceedings"   CiteSeer_Book="Proceedings   of   the   1988   ACM   Conference   on   LISP   and   Functional   Programming   Snowbird   UT"   CiteSeer_Volume=""   Title="An   Implementation   of   Standard   {ML}   Modules,">

            <identifier   Org="ISBN:0387582029"   Paper_ID="/577499.html"   Extracted="0387582029"   DDC="005.1/1"   Normalized_DDC="00511"   Normalized_Weight="0.2"   />

            <identifier   Org="ISBN:089791273X"   Paper_ID="/577499.html"   Extracted="089791273X"   DDC="005.13/3"   Normalized_DDC="005133"   Normalized_Weight="0.2"   />

            <identifier   Org="ISBN:1595933883"   Paper_ID="/577499.html"   Extracted="1595933883"   DDC="005.13/1"   Normalized_DDC="005131"   Normalized_Weight="0.2"   />

            <identifier   Org="ISBN:3540291385"   Paper_ID="/577499.html"   Extracted="3540291385"   DDC="005.1/1"   Normalized_DDC="00511"   Normalized_Weight="0.2"   />

            <identifier   Org="ISBN:3540439153"   Paper_ID="/577499.html"   Extracted="3540439153"   DDC="005.1/5"   Normalized_DDC="00515"   Normalized_Weight="0.2"   />

      </rec>

      <rec   ID="/513482.html"   Type="inproceedings"   CiteSeer_Book="Proceedings   of   the   Conference   on   ObjectOriented   Programming   Systems   Languages   and   Applications   OOPSLA"   CiteSeer_Volume=""   Title="Encapsulation   and   Inheritance   in   Object-Oriented   Programming   Languages,">

            <identifier   Org="ISBN:0120121433"   Paper_ID="/513482.html"   Extracted="0120121433"   />

            <identifier   Org="ISBN:0201624443"   Paper_ID="/513482.html"   Extracted="0201624443"   DDC="005.1/1"   Normalized_DDC="00511"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:0387582029"   Paper_ID="/513482.html"   Extracted="0387582029"   DDC="005.1/1"   Normalized_DDC="00511"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:0818608226"   Paper_ID="/513482.html"   Extracted="0818608226"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:1558600000"   Paper_ID="/513482.html"   Extracted="1558600000"   />

            <identifier   Org="ISBN:3211828443"   Paper_ID="/513482.html"   Extracted="3211828443"   DDC="004.2/1"   Normalized_DDC="00421"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:354022159X"   Paper_ID="/513482.html"   Extracted="354022159X"   DDC="005.1/1"   Normalized_DDC="00511"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:3540405313"   Paper_ID="/513482.html"   Extracted="3540405313"   DDC="005.1/17"   Normalized_DDC="005117"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:3540422064"   Paper_ID="/513482.html"   Extracted="3540422064"   DDC="005.1/17"   Normalized_DDC="005117"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:354053931X"   Paper_ID="/513482.html"   Extracted="354053931X"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:3540556133"   Paper_ID="/513482.html"   Extracted="3540556133"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:354059132X"   Paper_ID="/513482.html"   Extracted="354059132X"   DDC="005.7/3"   Normalized_DDC="00573"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:3540625992"   Paper_ID="/513482.html"   Extracted="3540625992"   DDC="005.13"   Normalized_DDC="00513"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:3540630899"   Paper_ID="/513482.html"   Extracted="3540630899"   DDC="005.1/17"   Normalized_DDC="005117"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:3540634789"   Paper_ID="/513482.html"   Extracted="3540634789"   DDC="005.74"   Normalized_DDC="00574"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:3540679588"   Paper_ID="/513482.html"   Extracted="3540679588"   DDC="005.13"   Normalized_DDC="00513"   Normalized_Weight="0.06666666666666667"   />

            <identifier   Org="ISBN:9810221703"   Paper_ID="/513482.html"   Extracted="9810221703"   DDC="005.1/1"   Normalized_DDC="00511"   Normalized_Weight="0.06666666666666667"   />

      </rec>

      <rec   ID="/329006.html"   Type="inproceedings"   CiteSeer_Book="Proceedings   of   the   Spring   1987   European   Unix   Users   Group   Conference"   CiteSeer_Volume=""   Title="Multiple   Inheritance   for   {C}++,">

            <identifier   Org="ISBN:0818621389"   Paper_ID="/329006.html"   Extracted="0818621389"   DDC="005.74"   Normalized_DDC="00574"   Normalized_Weight="0.5"   />

            <identifier   Org="ISBN:0897913337"   Paper_ID="/329006.html"   Extracted="0897913337"   />

            <identifier   Org="ISBN:1558600728"   Paper_ID="/329006.html"   Extracted="1558600728"   DDC="005.74"   Normalized_DDC="00574"   Normalized_Weight="0.5"   />

            <identifier   Org="ISBN:1558601503"   Paper_ID="/329006.html"   Extracted="1558601503"   />

      </rec>

      <rec   ID="SELF"   Type="SELF"   CiteSeer_Book="SELF"   CiteSeer_Volume="SELF"   Title="Signatures:   A   C++   Extension   for   Type   Abstraction   and   Subtype   Polymorphism">

            <identifier   Org="ISBN:0818675802"   Paper_ID="SELF"   Extracted="0818675802"   />

            <identifier   Org="ISBN:0818681144"   Paper_ID="SELF"   Extracted="0818681144"   DDC="005.74"   Normalized_DDC="00574"   Normalized_Weight="0.5"   />

            <identifier   Org="ISBN:3540601600"   Paper_ID="SELF"   Extracted="3540601600"   DDC="005.1"   Normalized_DDC="0051"   Normalized_Weight="0.5"   />

      </rec>

</references_metadata>

www.000webhost.com