DocumentCode :
2791295
Title :
C++: an evolving language
Author :
Levitt, Stephen P.
Author_Institution :
Sch. of Electr. & Inf. Eng., Univ. of the Witwatersrand, Johannesburg, South Africa
Volume :
2
fYear :
2004
fDate :
15-17 Sept. 2004
Firstpage :
1197
Abstract :
This work gives an overview of the recent, significant, changes that the C++ language is undergoing. These include: the increasing popularity of the facilities and idioms provided by the standard template library and the boost libraries; the use of smart pointers instead of raw pointers; and the emergence of generic programming and template meta-programming as a powerful paradigm. The next version of the C++ standard is discussed and shown to further evolve the language by offering better support for the way in which C++ is being used in practice. Moving beyond the language itself, there are several initiatives that seek to incorporate C++ into virtual machine environments. Microsoft has opted to extend the C++ language to take advantage of their NET platform, while the Python community has produced several tools for generating C++ binding. These approaches (which make different trade-offs) are discussed. Overall, the current changes within C++ promote its use as a more high level language than in the past and further the promise of large libraries of reusable, easily-customisable code, The ability to use C++ in the production of hybrid applications which run on managed virtual machines offers new possibilities for combining the richness of the virtual machine environment with the efficiency of C++.
Keywords :
C++ language; software libraries; software reusability; virtual machines; C++ language; C++ standards; Microsoft; NET platform; Python community; boost libraries; easily-customisable code; generic programming; high level language; hybrid applications; powerful paradigm; raw pointers; reusable libraries; smart pointers; standard template library; template metaprogramming; virtual machine environments; Africa; Computer languages; Containers; Environmental management; High level languages; ISO standards; Libraries; Production; Programming profession; Virtual machining;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
AFRICON, 2004. 7th AFRICON Conference in Africa
Print_ISBN :
0-7803-8605-1
Type :
conf
DOI :
10.1109/AFRICON.2004.1406879
Filename :
1406879
Link To Document :
بازگشت