Title page for ETD etd-11292004-155755


Type of Document Master's Thesis
Author Singh, Hermanpreet
Author's Email Address hsingh@vt.edu
URN etd-11292004-155755
Title Introspective C++
Degree Master of Science
Department Computer Science
Advisory Committee
Advisor Name Title
Denis Gracanin Committee Chair
Shawn Bohner Committee Member
Stephen Edwards Committee Member
Keywords
  • templates
  • introspection
  • metaprogramming
  • c++
Date of Defense 2004-08-20
Availability unrestricted
Abstract
Introspection has become a significant language feature to enable new component technologies.

It enables such capabilities as runtime component discovery, new levels of component

flexibility and change tolerance, dynamic reconfiguration and system self healing. Three

levels of introspection are discussed: simple type identification, structural introspection, and

behavioral introspection

The C++ programming language offers type identification, but neither structural or behavioral

introspection. Through its use and combination of several language features, C++

has provided a flexible system for achieving some of the features of introspection without

explicitly providing it. Features such as templates, operator overloading, polymorphism, and

multiple inheritance have allowed software systems in C++ to build flexible components that

tolerate change and support dynamic reconfiguration and self healing. The template system

in particular has recently been shown to be more capable than expected, being Turing

complete in its own right.

Despite their existing capabilities, the language features have their limits and would benefit

from an introspective mechanism. Unlike traditional introspective systems that execute

solely at run–time, Introspective C++ has chosen a compile–time approach that tightly

integrates with the template mechanism. This approach enables interaction with the other

language mechanisms during the compilation, enabling the resolution of many introspective

questions before the compiled program is ever run. Furthermore, the mechanism can serve

as a base for developing run–time introspective systems.

Files
  Filename       Size       Approximate Download Time (Hours:Minutes:Seconds) 
 
 28.8 Modem   56K Modem   ISDN (64 Kb)   ISDN (128 Kb)   Higher-speed Access 
  index.pdf 689.82 Kb 00:03:11 00:01:38 00:01:26 00:00:43 00:00:03

Browse All Available ETDs by ( Author | Department )

dla home
etds imagebase journals news ereserve special collections
virgnia tech home contact dla university libraries

If you have questions or technical problems, please Contact DLA.