Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456 Stroustrup: Publications
Here is a reasonably complete list of my publications in reverse chronological order.
Interviews are listed provided they are written interviews that have appeared
in print.
Should you know of translations, interview, etc., that I have missed, please
email me the reference (bs at research.att.com).
Books
(including reviews, sample chapters, errata, and other supporting information).
Each book is also listed in its proper chronological spot in this list.
Technical reports
that I have authored or co-authored for the ISO C++ standards committee.
Peter Pirkelbauer, Yuriy Solodkyy, and Bjarne Stroustrup:
Open Multi-Methods for C++.
Proc. ACM 6th International Conference
on Generative Programming and Component Engineering (GPCE). October 2007.
Steve Cook, Scott Pike, and Bjarne Stroustrup:
"An Early-Reply Based Framework: Reliable Concurrency that Is Verifiable".
To appear IEEE HASE'07. November 2007.
Luke Wagner, Jaakko Jarvi, and Bjarne Stroustrup:
Using ownership types to support aliasing boundaries.
IWACO'07 (ECOOP workshop: International Workshop on Aliasing,
Confinement and Ownership in object-oriented programming). July 2007.
B. Stroustrup:
C++ in 2005.
Extended foreword to Japanese translation of "The Design and Evolution of C++". January 2005.
B. Stroustrup:
Abstraction and the C++ machine model.
Proc. ICESS'04. December 2004.
Also in Springer LNCS 3605. Enbedded software and systems. 2005.
Matt Austern, Bjarne Stroustrup, Mikkel Thorup, and John Wilkinson:
Untangling the Balancing and Searching of Balanced Binary Search Trees.
Software - Practice & Experience.
Vol 33, Issue 13. November 2003. pp 1273-1298.
Appendix with code.
B. Stroustrup:
Serving the C++ Community.
Foreword to the published version of the C++ Standard (ISO/IEC 14882:2002).
Wiley 2003. ISBN 0 470 84674-7.
B. Stroustrup, A. Koenig, and B. Moo:
The C++ Programming Language.
Encyclopedia of Software Engineering. Second edition. Wiley.
2001.
B. Stroustrup: Speaking C++ as a Native.
Proc. ACAT 2000.
Also in "Advanced Computing and Analysis Techniques in Physics Research",
editors: P. C. Bhat and M. Kasemann.
American Institute of Physics.
AIP Conference Proceedings Volume 583.
ISBN 0-7354-0023-7.
August 2001.
The conference has made
my slides and a video of my talk available.
B. Stroustrup:
Exception Safety: Concepts and Techniques.
In "Advances in Exception Handling Techniques", editors:
Christophe Dony,
Joergen Lindskov Knudsen,
Alexander Romanovsky, and
Anand Tripathi.
Springer Verlag Lecture Notes in Computer Science, LNCS-2022.
ISSN 0302-9743. ISBN 3-540-41952-7.
April 2001.
B. Stroustrup and Tim Lindholm:
The Future of OOP.
The Future of Software Magazine.
Winter 2000/2001, vol 1, no. 1.
Italian translation: Computer Programming n 100 - Marzo 2001, Supplemento.
Japanese translation: "The Future of Software" book. ISBN 4-88135-980-0.
B. Stroustrup:
C++: A Brief History.
Encyclopedia of Computer Science, 4th ed.
(Anthony Ralston, Edwin D.
Reilly, David Hemmendinger, editors)
Grove's Dictionaries Inc.
New York.
2000.
ISBN 1-561-59248-X.
H. Sutter:
C Family of Languages - Interview with James Gosling, Dennis Ritchie,
and Bjarne Stroustrup.
The C++ Report.
July/August 2000, Vol 12/No 7.
The Java Report.
July 2000, Vol 5/No 7.
Saba Zamir:
Interview with Bjarne Stroustrup ("Bjarne Again").
Application Development Advisor.
May/June 2000, Vol.3, No 5.
Saba Zamir:
Interview with Bjarne Stroustrup ("Reflections on ISO Standardization, ...").
The C++ Report.
April 2000, Vol 12/No.4
B. Stroustrup:
The C++ Programming Language (Special Edition).
Addison Wesley.
Reading Mass. USA.
February 2000.
ISBN 0-201-70073-5. 1029 pages. Hardcover.
German translation. 2000; ISBN 3-8273-1660-X.
Hungarian translation. Kiskapu Kiadó, Budapest. 2001.
ISBN 9639301183 (1st volume)
ISBN 9639301191 (2nd volume)
ISBN 9639301175ö (both volumes).
Russian translation. Binom Publishers, 2001. ISBN 5-7940-0031-7 and 2005 (hardcover) ISBN 5-7989-0223-4.
PRC English edition. Pierson Education North Asia Ltd. and Higher Edication press. Bejing. 2001. ISBN 7-04-010095-9.
Bulgarian translation. Info Dar. www.infodar.com. 2001. ISBN 954-761-035-X.
Dutch translation. 2002. ISBN 90-430-0231-3.
Chinese translation (traditional). Pearson Educational Taiwan. 2002. ISBN 957-2054-43-0.
Spanish translation. 2002. Pearson Educacion S.A. ISBN 84-7829-046-X.
Chinese translation. 2002. China Machine Press. ISBN 7-111-10202-9.
Romanian translation. 2003. Teora. www.teora.ro. ISBN 9-789732-008942.
Korean translation. 2005. Pearson Education Korea. www.pearson.edu.kr. ISBN 89-450-7204-7.
Turkish translation in progress.
B. Stroustrup:
Getting from the past to the future.
The C++ Report.
pp 22-23.
Vol 11/No 10.
November-December 1999.
Also in
"More C++ Gems" (editor: Robert C. Martin). 2000. ISBN 0-521-78618-5.
B. Stroustrup:
An Overview of the C++ Programming Language.
Handbook of Object Technology
(Editor: Saba Zamir).
CRC Press LLC, Boca Raton, Florida.
1999.
ISBN 0-8493-3135-8.
B. Stroustrup:
A History of C++.
In "The Handbook of Programming Languages"
(Editor: Peter Salus).
Macmillan Technical Publishing.
Indianapolis. ISBN 1-57870-008-6.
1998.
B. Stroustrup:
The C++ Programming Language (3rd Edition).
Addison-Wesley Longman.
Reading Mass. USA.
1997.
ISBN 0-201-88954-4.
International Student Edition.1998. Addison Wesley Longman. ISBN 0-201-43569-1.
German translation 1998; ISBN 3-8273-1296-5.
Spanish translation 1998; ISBN 84-7829-019-2.
Japanese translation 1998; ISBN 4-7561-1895-X.
Russian translation 1999; Binom Publshers; ISBN 5-7940-0031-7.
French Translation 1999; CampusPress; ISBN 2-7440-0609-2.
Chinese translation 1999; Addison-Wesley Longman and Scholars Books, Taiwan; ISBN 957-981524-0.
Swedish translation 2000; Bonnier Ekerlid Data, Stockholm; ISBN 0-201-67504-8.
Finnish translation 2000; Teknolit; ISBN 951-846-026-4.
Polish translation 2000; ISBN 83-204-2375-9.
Portugese translation 2000; Bookman, Porto Alegre, Brazil. ISBN 85-7307-699-29.
Italian translation. Addison Wesley Longman Italia. Milano. 2000. ISBN 88-7192-078-3.
Greek translation. Klidarythmos Computer Books. 2001. ISBN 960-332-142-7.
Peter Trott:
Programming Languages: Past Present, and Future
(sixteen prominent computer scientists assess our field).
ACM Sigplan Notices. Vol 32, No 1. January 1997.
B. Stroustrup:
A perspective on Concurrency and C++.
in Wilson & Lu (Editors): Parallel Programming using C++.
The MIT Press.
1996.
ISBN 0-262-73118-5.
B. Stroustrup:
Language-technical Aspects of Reuse.
Proc. 4th International Conference on Software reuse,
pp 11-19.
April 1996.
B. Stroustrup:
A Brief Look at C++.
IEEE AI Expert, Intelligent Systems and their Applications,
pp 13-15.
February 1996.
A. R. Koenig and B. Stroustrup:
Foundations for Native C++ Styles.
Software Practice and Experience. Vol 25, special issue S4.
December 1995.
B. Stroustrup:
A Perspective on ISO C++.
The C++ Report. Vol 7/No 8,
pp 22-28.
October 1995.
Also in "C++ Gems" (editor: Stan Lippman) SIGS Publications, 1996. ISBN 1-884842-37-2.
B. Stroustrup:
Making a vector fit for a Standard.
The C++ Report.
October 1994.
Also in "C++ Gems" (editor: Stan Lippman) SIGS Publications, 1996. ISBN 1-884842-37-2.
B. Stroustrup:
The Design and Evolution of C++.
Addison Wesley, ISBN 0-201-54330-3.
March 1994.
German translation, Addison-Wesley Germany, Bonn. 1994. ISBN 3-89319-755-9.
Polish translation, Wydawnictwa Naukowo-Techniczne, Warszawa, 1996.
Russian translation. DMK Press, Moscow. 2000. ISBN 5-94074-005-7.
Chinese translation. China Machine Press. 2001. ISBN 7-111-09098-5.
Chinese edition in English. China Machine Press. 2002. ISBN 7-111-09592-8.
Japanese translation. Softbank Publishing. 2005. ISBN 4-7973-2854-1.
B. Stroustrup, A. Koenig, and B. Moo:
The C++ Programming Language.
Encyclopedia of Software Engineering. Wiley. ISBN 0-471-54004-8.
February 1994.
B. Stroustrup:
The Simula Programming Language.
Encyclopedia of Software Engineering. Wiley. ISBN 0-471-54004-8.
February 1994.
B. Stroustrup:
On Learning C++.
Martin Heller: Advanced Win32 Programming. Wiley.
July 1993.
B. Stroustrup:
Why Consider Language Extensions?.
Proc. European C++ Users' Group Meeting, Munich.
July 1993.
Also, The C++ Report. Vol 5 no 7.
B. Stroustrup:
Library Design Using C++.
The C++ Report. Vol 5 no 5,
pp 14-22.
June 1993.
Also in "C++ Gems" (editor: Stan Lippman) SIGS Publications, 1996. ISBN 1-884842-37-2.
B. Stroustrup:
A History of C++: 1979-1991.
Proc ACM History of Programming Languages conference (HOPL-2).
ACM Sigplan Notices. Vol 28 No 3,
pp 271-298.
March 1993.
Also, History of Programming languages (editors T.J.Begin and R.G.Gibson)
Addison-Wesley, ISBN 1-201-89502-1. 1996.
B. Stroustrup:
We're not in Kansas Anymore.
The C++ Report ``Moving from C to C++'' supplement. SIGS Publications.
August 1992.
B. Stroustrup:
Tracing the roots of C++.
Silver Anniversary Supplement. SIGS Publications.
August 1992.
B. Stroustrup
D. Lenkov:
Run-Time Type Identification for C++ (Revised).
Proc USENIX C++ Conference.
August 1992.
B. Stroustrup, et.al.:
How to Write a C++ Language Extension Proposal.
The C++ Report,
pp 40-47.
May 1992
Also, ACM Sigplan Notices, Vol 27 No 6 June 1992 pp 64-71.
B. Stavtrup:
Overloading of C++ Whitespace.
Journal of Object-Oriented Programming.
April 1, 1992.
B. Stroustrup:
C++ 3.0, Standardisering, og andet godt.
PC World (Danmark).
March 1992 (in Danish).
B. Stroustrup and D. Lenkov:
Run-Time Type Identification for C++.
The C++ Report, Vol 4 No 3,
pp 32-42.
March/April 1992.
B. Stroustrup:
The C++ Programming Language (2nd Edition).
Addison Wesley, ISBN 0-201-53992-6.
June 1991.
French translation, Addison-Wesley France, 1992. ISBN 2-87908-013-4.
Vuibert Informatique. 1998. ISBN 2-7117-8617-X.
German translation, Addison-Wesley Germany, 1992. ISBN 3-89319-386-3.
Chinese translation, Scholars' Publication, Taipei, RC, October 1992. ISBN 957-652-396-6.
Japanese translation, Toppan, July 1993. ISBN 4-8101-8047-6.
Spanish translation, Addison-Wesley Iberoamericana, Mexico City and Madrid, 1993. ISBN 0-201-60104-4.
Italian translation, Addison-Wesley Italy, Milan, 1993. ISBN 88-7192-053-8.
Russian translation, Diasoft, Kiev, 1993. ISBN 5-87554-079.
Polish translation, Wydawnictwa Naukowa-Techniczne, Warszawa, 1994. ISBN 83-204-1697-3.
Czeck translation, Praha, 1997. ISBN 80-901507-2-1 and 80-86056-20-1.
Greek translation, Klidarithmos, 19??. ISBN 960-???-???-?.
B. Stroustrup:
Sixteen Ways to Stack a Cat.
The C++ Report.
Oct 1990.
(a somewhat odd paper provided by popular demand).
M. A. Ellis and B. Stroustrup:
The Annotated C++ Reference Manual.
Addison Wesley, ISBN 0-201-51459-1.
May 1990.
Russian translation, Mir, Moscow, 1992.
Japanese translation, Toppan 1992.
Portugese translation, Editoria Campus Ltda, Rio de Janeiro, 1993.
A. R. Koenig and B. Stroustrup:
Exception Handling for C++ (revised).
Proc USENIX C++ Conference.
April 1990.
Also, Journal of Object Oriented Programming, V3 no2, July/Aug 1990, pp 16-33.
Also in "The Evolution of C++" (editor Jim Waldo). The MIT Press. 1993. ISBN 0-262-73107.
B. Stroustrup:
On Language Wars.
Hotline on Object-Oriented Technology.
Vol 1, No 3. January 1990.
Al Stevens: Interview with Bjarne Stroustrup.
Dr. Dobbs Journal.
no 159, pp 9,14-17. Winter 1989.
A. R. Koenig and B. Stroustrup:
Exception Handling for C++.
Proc ``C++ at Work'' Conference.
November 1989.
B. Stroustrup:
C++ er blevet voksen: Version 2.0.
PC World (Danmark).
Nr. 13 November 1989 pp 24-28 (in Danish).
A. R. Koenig and B. Stroustrup:
As Close as Possible to C - but no Closer.
The C++ Report.
Vol 1 No 7 July 1989.
Also, AT&T; C++ Translator Release Notes, February 1990.
K. Simonsen and B. Stroustrup:
A European Representation for ISO C.
EUUG Newsletter.
Vol 9 No 2 Summer 1989 pp 15-18.
B. Stroustrup:
Standardizing C++.
The C++ Report.
Vol 1 No 1 January 1989.
Also in "C++ Gems" (editor: Stan Lippman) SIGS Publications, 1996. ISBN 1-884842-37-2.
B. Stroustrup:
The Evolution of C++: 1985-1989.
USENIX Computing Systems, V2 no 3,
pp 191-250.
Summer, 1989.
Also, AT&T; C++ Translator Release Notes June 1989.
Also in "The Evolution of C++" (editor Jim Waldo). The MIT Press. 1993. ISBN 0-262-73107.
B. Stroustrup:
The C++ Reference Manual.
AT&T; C++ Translator Release Notes.
June 1989.
B. Stroustrup and S. Lippman:
Pointers to Class Members in C++.
Proc. USENIX C++ Conference, Denver,
pp 305-326.
October, 1988.
B. Stroustrup:
Type-Safe Linkage for C++.
Proc. USENIX C++ Conference, Denver,
pp 193-210.
October, 1988.
Also, USENIX Computing Systems, V1 no 4, Fall 1988, pp 371-404.
Also, AT&T; C++ Translator Release Notes June 1989.
B. Stroustrup:
Parameterized Types for C++.
Proc. USENIX C++ Conference, Denver,
pp 1-18.
October, 1988.
Also, Computing Systems, V2 no 1, Winter 1989.
Also, Journal of Object Oriented Programming, V1 no5, Jan/Feb 1989, pp 5-17.
Also, AT&T; C++ Translator Release Notes June 1989.
B. Stroustrup:
Programspraaket C++.
Indistriell Datateknik,
pp 28-33.
August, 1988.
(in Swedish).
B. Stroustrup:
A Better C?
BYTE Magazine,
pp 215-218.
August, 1988.
B. Stroustrup:
Design Issues in C++.
ACM Sigplan Notices,
pp 33-37.
January, 1988.
B. Stroustrup and J. E. Shopiro:
A Set of Classes for Co-routine Style Programming.
Proc. USENIX C++ Workshop.
November, 1987.
B. Stroustrup:
The Evolution of C++: 1985-1987.
Proc. USENIX C++ Workshop.
November, 1987.
B. Stroustrup:
Possible Directions for C++.
Proc. USENIX C++ Workshop.
November, 1987.
Also in "The Evolution of C++" (editor Jim Waldo). The MIT Press. 1993. ISBN 0-262-73107.
B. Stroustrup:
Multiple Inheritance for C++.
Proc. EUUG Spring Conference.
May 1987.
Revised version in AT&T; C++ Translator Release Notes, June 1989.
Also, USENIX Computing Systems, V2 no 4, Fall 1989, pp 367-396.
B. Stroustrup:
HICOOPS'87 Announcement.
ACM Sigplan Notices,
pg 2.
April 1, 1987.
B. Stroustrup:
An Overview of C++.
ACM Sigplan Notices, Special Issue,
pp 7-18.
October, 1986.
Also, Nikkei Electronic, February 1987, pp 239-250 (in Japanese).
Also, AUUGN vol 7, no 4-5 pp 39-55 (annotated by Mike Mobray).
Also, Proc. USENIX C++ Workshop, November 1987.
Also, The Lifeboat PERSPECTIVE, October 1988, pp 76-83 (in Japanese).
Also, AT&T; C++ Translator Release Notes, June 1989.
B. Stroustrup:
What is Object-Oriented Programming?
Proc. 14th ASU Conference,
pp 69-84
August, 1986.
Revised version in Proc. ECOOP'87, May 1987, Springer Verlag Lecture Notes.
in Computer Science Vol 276, pp 51-70.
Also, Proc. USENIX C++ Workshop, November, 1987.
Also, INFORMATYKA, May 1988 (in Polish).
Also, Revised version in IEEE Software Magazine, May 1988, pp 10-20.
Also, AT&T; C++ Translator Release Notes June 1989.
B. Stroustrup:
The C++ Programming Language.
IEEE Software.
January 1986.
Also, Simula Newsletter, Vol. 13, No. 4, November 1985.
B. Stroustrup:
A Set of C++ Classes for Co-routine Style Programming.
AT&T; C++ Translator Release Notes.
November, 1985.
Leonie V. Rose and B. Stroustrup:
Complex Arithmetic in C++.
AT&T; C++ Translator Release Notes.
November, 1985.
B. Stroustrup:
The C++ Programming Language.
Addison Wesley, ISBN 0-201-12078-X.
October, 1985.
German translation, Addison Wesley, 1987.
Japanese translation, Addison Wesley and Toppan, 1988.
French translation, Addison Wesley and InterEditions, 1989.
Italian translation, Addison Wesley Italia, Milan, 1990.
Serbo-Croat translation, Dragon Publishing, Belgrade, 1990.
Russian translation, Radio i Svyaz, Moscow, 1991.
Chinese translation (unauthorized), Bureau of Publication (authorization #3321-90321) of city of Beijing.
B. Stroustrup:
A C++ Tutorial.
Proc. Summer 1985 EUUG Conference.
September, 1985.
Also, Proc. ACM 1985 Annual Conference, pp. 56-64, October, 1985.
B. Stroustrup:
An Extensible I/O Facility for C++.
Proc. Summer 1985 USENIX Conference,
pp 57-70.
June, 1985.
B. Stroustrup:
Data Abstraction in C.
Bell Labs Technical Journal.
vol 63.
no 8 (Part 2),
pp 1701-1732.
October 1984.
Also in UNIX System Reading and Applications, pp 119-150, Prentice-Hall, 1987.
B. Stroustrup:
A C++ Tutorial.
Proc. 1984 National Communications Forum.
September, 1984.
B. Stroustrup:
Operator Overloading in C++
Proc. IFIP WG2.4 Conference on System Implementation Languages:
Experience & Assessment.
September, 1984.
B. Stroustrup:
Adding Classes to the C Language: An Exercise in Language Evolution
Software Practice and Experience,
pp 139-161.
February, 1983.
B. Stroustrup:
An Experiment with the Interchangeability of Processes and Monitors.
Software Practice and Experience,
pp 1011-1025,
December, 1982.
B. Stroustrup:
Classes: An Abstract Data Type Facility for the C Language.
Sigplan Notices,
January, 1982.
B. Stroustrup:
Long Return: A technique for Improving The Efficiency of
Inter-Module Communication.
Software Practice and Experience,
pp 131-143.
January 1981.
B. Stroustrup:
Specification of Software Systems for a Range of Execution Environments.
Proc. of Workshop on Fundamental Issues in Distributed Computing.
Fallbrook, CA.
December 1980.
B. Stroustrup:
An Inter-Module Communication System for a Distributed
Computer System.
Proc. of 1st Int'l Conf. on Distributed Computing Systems,
pp 412-418.
October 1979.
Reprinted in A Pragmatic View of Distributed Processing Systems,
Tutorial, Editor: Kenneth J. Thurber, IEE Catalog No. EHO-160-2,
pp. 296-302 (1980).
Also in Journal of Digital Systems.
March 1981.
B. Stroustrup:
On Unifying Module Interfaces.
ACM Operating Systems Review,
vol 12.
no 1,
pp 90-98.
January 1978.