[comp.org.usenix] C++ Conference

peter@usenix.UUCP (Peter H. Salus) (09/21/88)

Hotel rooms are going fast for the USENIX C++
Conference on October 17-20.  If you are planning to attend,
call the Denver Marriott City Center at 303-297-1300, 
tell them you are USENIX attendee, and book your room.
USENIX will not be responsible if you can't get space!

Conference pre-registration (at the bargain rate) 
end Sept. 28th!

This is a fair warning.  Tutorials are filling up.

Peter

peter@usenix.UUCP (Peter H. Salus) (10/05/88)

This is to let you all know that tutorials 
M1 Advanced C++
nd
T2 Applications...

are closed for the C++ Conference in Denver.  There 
are still some places open in the other two tutorials.

Keep those cards and letters comin' ... and money.

Peter H. Salus
Executive Director

ellie@usenix.ORG (Ellie Young) (02/08/90)

USENIX C++ CONFERENCE
Marriott Hotel, San Francisco, CA
April 9-11, 1990


The second USENIX C++ Conference will be held at the 
Marriott Hotel in San Francisco, CA, April 9-11, 1990. This conference
will offer an intensive 3-day program, consisting of full and
half-day tutorials on April 9th, followed by two days of
technical sessions covering a broad spectrium of work.  

Listed below are the tutorial and technical offerings. Birds of a
Feather sessions may also be scheduled.  The brochure listing
complete details has just been mailed to the USENIX mailing list,
Please contact the USENIX Conference office if you do not receive
it soon:

                  USENIX Conference Office
                    22672 Lambert Street
                         Suite 613
                     El Toro, CA 92630
                        TEL 714-588-8649
			FAX 714-588-9706
                     EMAIL: judy@usenix.org

*************************************************************
TUTORIALS

FULL DAY FORMAT:

Tutorial:       An Introduction To C++
Instructor:     Robert Murray, AT&T Bell Laboratories
-----
A survey of the main features  of  C++  (including  features
added  in  Version  2.0)  will be presented, along with some
short examples that show how  to  use  the  features  effec-
tively.   Most use of C++ falls into one of three flavors: a
better C; data abstraction;  and,  object-oriented  program-
ming.   We  will  examine  these  flavors, starting with the
features and paradigms that are closest to C, and  progress-
ing  to  the  more ambitious (and potentially more powerful)
features.  We'll also discuss the relationship between  ANSI
C, C++ Version 1.2, and C++ Version 2.0.

Tutorial:       Effective Use of C++
Instructor:     Andrew Koenig, AT&T Bell Laboratories
-----
A review of the central concepts of C++, the ways  in  which
the  language  supports  those concepts, and a detailed tour
through  several  complete   programming   examples.    This
tutorial  will  emphasize  'how  to use it well' rather than
'what the features are'.  Attendees are presumed to be capa-
ble  of  looking  up  details  of syntax and semantics them-
selves.

Tutorial:       A Tour of Cfront: Cfront 2.0 Internals
Instructor:     Stanley Lippman, AT&T Bell Laboratories
-----
This tutorial will survey selected internal data  structures
and algorithms used by Cfront for the implementation of such
C++ language features as multiple inheritance, virtual  base
classes,  virtual  functions,  and the static initialization
and deallocation of objects.  We'll try to make sense of the
generated  intermediate C code in light of these structures.
Examples of both effective  and  ineffective  coding  styles
will be discussed.


HALF DAY FORMAT:

Tutorial:       Using C++ on the Macintosh
Instructors:    Bill Gibbons, Consultant & Ken Friedenbach
                Cadence Design Systems, Inc.
-----
Macintosh Programmer's Workshop (MPW) C++ is  an  adaptation
of  the  AT&T  C++  Language Translation System version 2.0.
This tutorial will provide information regarding the MPW C++
language, as well as information about libraries, debuggers,
browsers, and other software development  support  tools  on
the Macintosh.  Topics include: overview of MPW C++ language
features, support for the Macintosh  toolbox  and  operating
system, support for the Macintosh memory model, and language
support for MacApp, the  extensible  Macintosh  Application.
The  tutorial  will explain the development of sample Macin-
tosh applications and MPW tools  using  C++.   The  tutorial
will  cover  useful programming techniques and common errors
to avoid.

Tutorial:       Using C++ with MacApp
Instructor:     Ken Friedenbach, Cadence Design Systems, Inc.
-----
MacApp is an extensible Macintosh Application which  simpli-
fies the task of writing a fully functional Macintosh appli-
cation.  Macintosh Programmer's Workshop (MPW) C++  includes
features  to  support  using  C++ to develop MacApp applica-
tions.  This tutorial will provide information  about  using
MPW  C++ with MacApp to implement fully functional Macintosh
applications.  Topics  include:  C++  language  support  for
MacApp  and Object Pascal, overview of the MacApp libraries,
supporting multiple documents and windows, using  the  clip-
board  to  support  cut and paste, printing, and reading and
writing document data.  The  tutorial  will  include  sample
application code, guidelines for creating building blocks to
be shared between applications, and advice for mixing MacApp
classes with multiple inheritance classes.

TECHNICAL PROGRAM- April 10 - 11, 1990

T U E S D A Y,   A P R I L  10

9:00 - 10:00    Welcome                  Jim Waldo (Program Chairman),  
					 Hewlett Packard

                Keynote Address                  Adele Goldberg, 
						 ParcPlace Systems

10:30 - 12:00   METHODOLOGIES                   Chair:  Martin O'Riordon, Microsoft

                 Experiences  with  Object-Oriented  Software Development
	                 Nicholas Wybolt, Cadre Technologies, Inc.

                Climbing the C++  Learning  Tree
                	 P. R. Jossman, E. N. Schiebel, J. C. Shank,
			 AT&T Bell Laboratories

                Design  Criteria for  C++  Libraries
                  	Dr. James M. Coggins, Univ. of North Carolina at Chapel Hill

2:00 -  3:30   FRAMEWORKS                      Chair: Geoff Wyant, Hewlett Packard

                Reliable Distributed Programming in C++: The Arjuna Approach
			Graham D. Parrington, University of Newcastle upon Tyne

                Designing  Portable  Application  Frameworks for C++     
			Fergal Dearle, Glockenspiel

                FOG/C++:  A  Fragmented   Object   Generator
                   	Yvon  Gourhant, Marc  Shapiro, Institut National 
			de Recherche en Informatique et en Automatique

4:00 -  5:30    APPLICATIONS  I                  Chair:  Dr.  James Coggins, 
							 Univ. of NC

                Object-Oriented Redesign Using C++:  Experience with Parser
		Generators 
			Judith E. Grass, Chandra Kintala, Ravi Sethi, AT&T Bell Laboratories

                GPERF: A  Perfect  Hash  Function  Generator
                  	Douglas C. Schmidt, University of California, Irvine

                C++ and  Operating  Systems  Performance:  A Case Study     
	               Vincent  F.  Russo,  Peter W. Madany, Roy H. Campbell,
 			Univ. of Illinois Urbana - Champaign 


W E D N E S D A Y,  A P R I L  11

9:00  -  10:00    INVITED   PAPER           Chair: Andrew Koenig, AT&T Bell Laboratories

                Exception Handling for C++
			 Bjarne Stroustrup, AT&T Bell Laboratories

10:00 - 10:30   BREAK

10:30 - 11:00   APPLICATIONS II         Chair: Roy Campbell, Univ. of IL,
					 Urbana - Champaign

                Experiences in Writing a Distributed  Particle Simulation Code
		in  C++ 
	            	David  W. Forslund, Charles Wingate,
			Peter Ford, J. Stephen Junkins, Jeffrey Jackson, 
			Los  Alamos  National Laboratory

                The Conduit: A Communication Abstraction  in C++       
		     	Jonathan  M. Zweig, Ralph E. Johnson,
			University of Illinois at Urbana  -  Champaign

                Writing a Gateway  in  C++
			Preben Fisker Jensen, Peter Juhl, Jutland Telephone Co.


2:00 -   3:30   EXTENSIONS              Chair:  Peter  Canning, Hewlett Packard
						 Laboratories

                An Exception Handling Implementation for C++
                 	Michael D. Tiemann

                Runtime Access to Type  Information  in  C++
                  	John  A. Interrante, Mark A. Linton, Stanford University

                Extended   C++     
	                   Robert Seliger, Hewlett Packard Clinical Information Systems


4:00 -  5:30    ENVIRONMENTS     	Chair:  Jim Waldo, Hewlett Packard

                The C++ Information Abstractor
                 	 Judith  E. Grass, Yih-Farn Chen, AT&T Bell Laboratories

                Utilizing Dependency Information in an Incremental 
		Compilation Environment for C++
                	 Alan Sloane, ParcPlace Systems

                FIELD  Support  for   C++
			Steven P. Reiss, Scott Meyers, Brown University

johnd@boulder.Colorado.EDU (John Donnelly) (03/07/90)

USENIX C++ CONFERENCE
Marriott Hotel, San Francisco, CA
April 9-11, 1990

DEADLINE FOR ROOM RESERVATIONS IS 3/18/90, and it advised that
you make hotel arrangements now, because after that date it is
unlikely that the Marriott will have many available.


The second USENIX C++ Conference will be hald at the San Francisco
Marriott Hotel in San Francisco, CA, April 9-11, 1990. This conference
will offer an intensive 3-day program, consisting of full and
half-day tutorials on April 9th, followed by two days of
technical sessions covering a broad spectrium of work.  

Listed below are the tutorial and technical offerings. Birds of a
Feather sessions may also be scheduled.  

Please contact the USENIX Conference office for a brochure and complete
details on this conference soon.

                  USENIX Conference Office
                    22672 Lambert Street
                         Suite 613
                     El Toro, CA 92630
                        TEL 714-588-8649
			FAX 714-588-9706
                     EMAIL: judy@usenix.org

*************************************************************
TUTORIALS

FULL DAY FORMAT:

Tutorial:       An Introduction To C++
Instructor:     Robert Murray, AT&T Bell Laboratories
-----
A survey of the main features  of  C++  (including  features
added  in  Version  2.0)  will be presented, along with some
short examples that show how  to  use  the  features  effec-
tively.   Most use of C++ falls into one of three flavors: a
better C; data abstraction;  and,  object-oriented  program-
ming.   We  will  examine  these  flavors, starting with the
features and paradigms that are closest to C, and  progress-
ing  to  the  more ambitious (and potentially more powerful)
features.  We'll also discuss the relationship between  ANSI
C, C++ Version 1.2, and C++ Version 2.0.

Tutorial:       Effective Use of C++
Instructor:     Andrew Koenig, AT&T Bell Laboratories
-----
A review of the central concepts of C++, the ways  in  which
the  language  supports  those concepts, and a detailed tour
through  several  complete   programming   examples.    This
tutorial  will  emphasize  'how  to use it well' rather than
'what the features are'.  Attendees are presumed to be capa-
ble  of  looking  up  details  of syntax and semantics them-
selves.

Tutorial:       A Tour of Cfront: Cfront 2.0 Internals
Instructor:     Stanley Lippman, AT&T Bell Laboratories
-----
This tutorial will survey selected internal data  structures
and algorithms used by Cfront for the implementation of such
C++ language features as multiple inheritance, virtual  base
classes,  virtual  functions,  and the static initialization
and deallocation of objects.  We'll try to make sense of the
generated  intermediate C code in light of these structures.
Examples of both effective  and  ineffective  coding  styles
will be discussed.


HALF DAY FORMAT:

Tutorial:       Using C++ on the Macintosh
Instructors:    Bill Gibbons, Consultant & Ken Friedenbach
                Cadence Design Systems, Inc.
-----
Macintosh Programmer's Workshop (MPW) C++ is  an  adaptation
of  the  AT&T  C++  Language Translation System version 2.0.
This tutorial will provide information regarding the MPW C++
language, as well as information about libraries, debuggers,
browsers, and other software development  support  tools  on
the Macintosh.  Topics include: overview of MPW C++ language
features, support for the Macintosh  toolbox  and  operating
system, support for the Macintosh memory model, and language
support for MacApp, the  extensible  Macintosh  Application.
The  tutorial  will explain the development of sample Macin-
tosh applications and MPW tools  using  C++.   The  tutorial
will  cover  useful programming techniques and common errors
to avoid.

Tutorial:       Using C++ with MacApp
Instructor:     Ken Friedenbach, Cadence Design Systems, Inc.
-----
MacApp is an extensible Macintosh Application which  simpli-
fies the task of writing a fully functional Macintosh appli-
cation.  Macintosh Programmer's Workshop (MPW) C++  includes
features  to  support  using  C++ to develop MacApp applica-
tions.  This tutorial will provide information  about  using
MPW  C++ with MacApp to implement fully functional Macintosh
applications.  Topics  include:  C++  language  support  for
MacApp  and Object Pascal, overview of the MacApp libraries,
supporting multiple documents and windows, using  the  clip-
board  to  support  cut and paste, printing, and reading and
writing document data.  The  tutorial  will  include  sample
application code, guidelines for creating building blocks to
be shared between applications, and advice for mixing MacApp
classes with multiple inheritance classes.
O

TECHNICAL PROGRAM- April 10 - 11, 1990

T U E S D A Y,   A P R I L  10

9:00 - 10:00    Welcome                  Jim Waldo (Program Chairman),  
					 Hewlett Packard

                Keynote Address                  Adele Goldberg, 
						 ParcPlace Systems

10:30 - 12:00   METHODOLOGIES                   Chair:  Martin O'Riordon, Microsoft

                 Experiences  with  Object-Oriented  Software Development
	                 Nicholas Wybolt, Cadre Technologies, Inc.

                Climbing the C++  Learning  Tree
                	 P. R. Jossman, E. N. Schiebel, J. C. Shank,
			 AT&T Bell Laboratories

                Design  Criteria for  C++  Libraries
                  	Dr. James M. Coggins, Univ. of North Carolina at Chapel Hill

2:00 -  3:30   FRAMEWORKS                      Chair: Geoff Wyant, Hewlett Packard

                Reliable Distributed Programming in C++: The Arjuna Approach
			Graham D. Parrington, University of Newcastle upon Tyne

                Designing  Portable  Application  Frameworks for C++     
			Fergal Dearle, Glockenspiel

                FOG/C++:  A  Fragmented   Object   Generator
                   	Yvon  Gourhant, Marc  Shapiro, Institut National 
			de Recherche en Informatique et en Automatique

4:00 -  5:30    APPLICATIONS  I                  Chair:  Dr.  James Coggins, 
							 Univ. of NC

                Object-Oriented Redesign Using C++:  Experience with Parser
		Generators 
			Judith E. Grass, Chandra Kintala, Ravi Sethi, AT&T Bell Laboratories

                GPERF: A  Perfect  Hash  Function  Generator
                  	Douglas C. Schmidt, University of California, Irvine

                C++ and  Operating  Systems  Performance:  A Case Study     
	               Vincent  F.  Russo,  Peter W. Madany, Roy H. Campbell,
 			Univ. of Illinois Urbana - Champaign 

8:00 - 10:00 p.m.

    		Adding New Code to a Running C++ Program
    			Sean M. Dorward, Ravi Sethi, Jonathan E. Shopiro, AT&T Bell Laboratories

   		 RIPE: An Object Oriented Robot Independent Programming Environment
    			David J. Miller and R. Charleene Lennox, Sandia National Laboratories

    		SIC--A System for Stochastic Simulation in C++
  			  Bernd Kluth, Institute for Teleprocessing, Aachen University of Technology

		A Type Brameterization Language for C++
    			 Richard Blinne, NCR Microelectronic Products Division
W E D N E S D A Y,  A P R I L  11

9:00  -  10:00    INVITED   PAPER           Chair: Andrew Koenig, AT&T Bell Laboratories

                Exception Handling for C++
			 Bjarne Stroustrup, AT&T Bell Laboratories

10:00 - 10:30   BREAK

10:30 - 11:00   APPLICATIONS II         Chair: Roy Campbell, Univ. of IL,
					 Urbana - Champaign

                Experiences in Writing a Distributed  Particle Simulation Code
		in  C++ 
	            	David  W. Forslund, Charles Wingate,
			Peter Ford, J. Stephen Junkins, Jeffrey Jackson, 
			Los  Alamos  National Laboratory

                The Conduit: A Communication Abstraction  in C++       
		     	Jonathan  M. Zweig, Ralph E. Johnson,
			University of Illinois at Urbana  -  Champaign

                Writing a Gateway  in  C++
			Preben Fisker Jensen, Peter Juhl, Jutland Telephone Co.


2:00 -   3:30   EXTENSIONS              Chair:  Peter  Canning, Hewlett Packard
						 Laboratories

                An Exception Handling Implementation for C++
                 	Michael D. Tiemann

                Runtime Access to Type  Information  in  C++
                  	John  A. Interrante, Mark A. Linton, Stanford University

                Extended   C++     
	                   Robert Seliger, Hewlett Packard Clinical Information Systems


4:00 -  5:30    ENVIRONMENTS     	Chair:  Jim Waldo, Hewlett Packard

                The C++ Information Abstractor
                 	 Judith  E. Grass, Yih-Farn Chen, AT&T Bell Laboratories

                Utilizing Dependency Information in an Incremental 
		Compilation Environment for C++
                	 Alan Sloane, ParcPlace Systems

                FIELD  Support  for   C++
			Steven P. Reiss, Scott Meyers, Brown University

ellie@usenix.ORG (Ellie Young) (02/22/91)

NOTE:  The brochure for this conference has just been mailed
to USENIX membership and other lists.  

             PRELIMINARY C++ TUTORIAL PROGRAM

	    Monday - Tuesday, April 22-23, 1991

		    Washington, D.C.

****************************************************************

Tutorial Code: M2
Title:  An Introduction to C++ (for C Programmers)
Instructor:  Robert Murray, AT&T Bell Laboratories; Editor,
             The C++ Report

Intended audience:

    Program designers and developers with a good knowledge of C.
    Knowledge of C++, data abstraction, or object-oriented
    programming is not required.

Course Description:

    A survey of the main features of C++ (including version 2.1) will
    be presented, along with some short examples that show how to use
    the features effectively.  Most use of C++ falls into one of
    three flavors:

	 - a better C,
	 - data abstraction,
	 - and object-oriented programming.

    We will examine these flavors, starting with the features and
    paradigms that are closest to C, and progressing to the more
    ambitious (and potentially more powerful) features.  The tutorial
    does not attempt to exhaustively cover every single feature of
    the language.  Instead, it will concentrate on small examples that
    demonstrate the most important concepts, including the design of
    a simple (but useful) String class.  A firm understanding of these
    concepts will give students what they need to begin developing real
    C++ programs.  We will also discuss the relationship between C++
    1.2, C++ 2.1, and ANSI C.

About the author:

    Rob Murray is a Supervisor in the Software Systems Department,
    AT&T Bell Laboratories.  His job responsibilities include giving
    presentations on C++ to research and development organizations
    across Bell Labs, investigating advanced C++ compilation
    techniques, and developing reusable C++ components and tools.  He
    has presented C++ tutorials at USENIX conferences since 1987.

Tutorial Code: T1 
Title:  Library Design and Management in C++
Instructor:    Dr. James M. Coggins, Computer Science Department
               University of North Carolina at Chapel Hill

Intended Audience:

    C++ programmers who are ready to begin developing class
    libraries for their own use, especially for scientific and
    engineering applications.

Course Description:

    C++ provides several desirable code packaging mechanisms.  We
    still require decision criteria for designing the architecture of
    class libraries (i.e., "What are the Objects?") along with
    management strategies for accessing and maintaining the libraries.

    This tutorial presents a decision criterion for identifying
    appropriate class definitions based on a particular "separation of
    concerns" objective. One consequence of this design criterion is
    that the library's clients can contribute early and effectively to
    the design process.

    A strategy for managing the library's resources will be
    presented.  This strategy, in use in academia and industry, is
    based on commonly available UNIX utilities such as make and RCS.
    The strategy minimizes the overhead required in client programs to
    engage the library's capabilities and to simplify library
    maintenance.

    The afternoon session will begin by explaining what C++ offers to
    scientific and engineering programming, stating the case for
    considering a switch from FORTRAN to C++ and offering alternatives
    for managing that conversion for individual programmers and for
    whole shops.

    Libraries for scientific and engineering applications often depend
    on a few crucial insights about the nature of their target
    domains.  Examples of such key insights will be offered from the
    fields of dynamic simulation, medical image processing and
    analysis, parallel computing, telecommunications, scientific data
    visualization, fluid dynamics, and computer graphics, including
    user interfaces.

About the author:
	
    Dr. Coggins teaches Software Engineering, Image Processing and
    Pattern Recognition, and Computer Vision and Graphics at UNC-Chapel
    Hill.  Dr. Coggins is a columnist for the international newsletter,
    the C++ Report, and was a member of the program committee for the
    1990 USENIX C++ Technical Conference.  Besides frequent
    presentations on C++ and library design in industry and academia,
    he has published articles on library design and management
    strategies in the 1990 USENIX conference, the C++ Report, and the
    C++ Journal and SIGPLAN Notices.
			

Tutorial Code: T2
Title: C++ Programming Style
Instructor: Tom Cargill, Consultant

Intended Audience:

    The tutorial will be of value to programmers who are starting to
    program in C++, or have a reading knowledge, and are looking for
    guidance on how to use its features in practice.  Knowledge of C++
    language basics is assumed.  If need be, advanced language
    features are clarified briefly.  The material is code intensive,
    for programmers who like to read and understand programs.

Course Description:

    C++ supports programming-in-the-large, allowing relationships
    between different parts of a program to be described.  The scope
    of C++ programming style therefore goes beyond the issues of
    traditional programming-in-the-small, such as indentation and the
    use of goto.  This tutorial examines the use of language features
    that often confuse a novice, including (multiple) inheritance,
    virtual functions, constructors, destructors, function and
    operator overloading, default arguments and static members.

    Unwarranted use of the more powerful features leads to cluttered
    programs that are harder to comprehend, and in some cases less
    efficient, than more straightforward alternatives.  In this
    tutorial we examine, and then simplify, a number of programs.
    The techniques range from simple rules of thumb about
    constructors to transformations that remove redundant
    inheritance.

    We read programs, discuss their organization and use of C++,
    critique the design, redesign where necessary, and then recode.
    The  discussion ranges from questions of data abstraction and
    object-oriented design to the expression of a given design in
    C++.  Design and coding style guidelines are distilled from the
    examples.

About the author:

    Tom Cargill started programming in C++ when the language was
    called "C84," at the Computing Science Research Center, AT&T Bell
    Labs, Murray Hill, NJ.  He wrote one of the first major C++
    programs, a family of portable, distributed debuggers.  He has
    continued to use C++, presenting his experience in papers and
    tutorials at numerous technical conferences.  Teaching C++
    courses regularly, Tom is the author of Addison-Wesley's TEC C++
    course.  Currently a software consultant, based Colorado, he
    holds a Ph.D. from the University of Waterloo.

Tutorial Code: T3
Title:   Decomposition/Generalization Methodology for C++ Programs
Instructor: Vaclav Rajlich, professor, Department of Computer Science,
            Wayne State University

Intended audience:

    The tutorial will be of value to programmers, system analysts,
    and managers who have at least a reading knowledge of C++, and
    are looking for guidance how to use its features.  Advanced
    language features are clarified briefly.


Course description:

    This tutorial introduces a methodology, called
    Decomposition/Generalization, for top-down development of
    object oriented systems.  The methodology is a variant of 
    stepwise refinement extended to object oriented systems and
    the C++ language.  The course utilizes several examples to
    illustrate the methodology.
    
    The Decomposition/Generalization methodology alleviates the
    difficulty of "finding the right objects".  It is compared to
    several other object oriented methodologies, in particular
    Coad/Yourdon, Booch, and Object Oriented Structured Design.

Biography of the author:

    Vaclav Rajlich has published numerous papers in software
    methodologies and tools.  He has been particularly interested
    in methodologies for object-based languages (Ada) and object
    oriented languages (C++). 

    He is a professor and former chairman of the Department of
    Computer Science at Wayne State University.  Before that he
    was with the University of Michigan in Ann Arbor.


_____________________________________________________________________

For registration and additional information please contact:

		Judy DesHarnais
		USENIX Conference Office
	        22672 Lambert Blvd., Suite 613
		El Toro, CA  92630
	        Phone:  714/588-8649
		FAX:    714/588-9706	

**********************************************************************


		          PRELIMINARY

		     C++ TECHNICAL PROGRAM

	   Wednesday and Thursday, April 24 -25, 1991

			Washington, D.C.

*********************************************************************

			Wednesday, April 24

8:45am  Keynote Address

    C++ + Persistence != An Object-Oriented DBMS
    David DeWitt (University of Wisconsin)

    Abstract

    Currently, a number of companies and research projects
    are building systems that add persistence to C++ 
    in order to provide a solution to the database
    needs of both VLSI and mechanical CAD systems and software 
    development environments.  This talk will contrast the different
    strategies being pursued and will examine the advantages and
    disadvantages of each approach.  


    Biography

    David J. DeWitt is a faculty member of the Computer
    Sciences Department at the University of Wisconsin.
    He is currently a member of the Technical Advisor Board
    for Objectivity and the Parallel Processing Advisor Board for NCR.

    Over the past 5 years he has managed the EXODUS extensible database
    system project at Wisconsin which is attempting to address
    the problems posed by emerging applications of database system
    technology  including GIS, CAD/CAM, and scientific applications.
    The tools provided by EXODUS include E, a persistent version of C++,
    the Exodus Storage Manager for storing persistent objects,
    and the extensible, object-oriented DBMS, EXTRA and EXCESS.

10:15am	 Break

10:45am  Experience		Chair: Doug Lea
    The Interaction of Pointers to Members and Virtual Base Classes in
    C++ Randall Meyers (Digital Equipment)

    Problems Involved in Extending Classes in C++
    Martin Carroll (AT&T Bell Laboratories)

    Automatic Detection of C++ Programming Errors:
    Initial Thoughts on a lint++
    Scott Meyers, Moises Lejter (Brown University)

12:15pm  Lunch

1:30pm  Class design		Chair: Jim Waldo

    The Features of the Object-oriented Abstract Type Hierarchy (OATH)
    Brian Kennedy (Texas Instruments)

    The Separation of Interface and Implementation in C++
    Bruce Martin (Hewlett-Packard)

    Signature-Based Polymorphism for C++
    Elana Granston (Illinois at Urbana-Champaign)
    Vincent Russo (Purdue University) 


3:00pm  Break

3:30pm  Panel: How Useful is Multiple Inheritance in C++?
    Chair: Andrew Koenig
    Panelists: Tom Cargill, Keith Gorlen, Rob Murray, Mike Vilot



6:00pm  USENIX reception


	**********	Thursday, April 25	***********


8:30am  Environments		Chair: Jonathan Shopiro

    Copying Garbage Collection in C++
    Daniel Edelson, Ira Pohl (UC Santa Cruz)

    Type Identification in C++
    Dmitry Lenkov, Shankar Unni, Michey Mehta (Hewlett-Packard)

    Representing Semantically Analyzed C++ Code with Reprise
    David Rosenblum, Alexander Wolf (AT&T Bell Laboratories)

10:00am  Break

10:30am  Concurrent and Distributed Applications      Chair: Rob Seliger
    Porting and Extending the C++ Task System with the Support of
    Lightweight Processes
    Philippe Gautron (Rank Xerox France and LITP)

    Concurrent Real-Time Music in C++
    David Anderson, Jeff Bilmes (UC Berkeley)

    DVOPS - A Tool for Developing Communication Protocols and
    Distributed Applications
    Juha Koivisto, Juhani Malka, James Reilly (Technical Research
    Center of Finland)

12:00    Lunch

1:30pm  Class Libraries	Chair: Keith Gorlen

    Experiences in the Design of a C++ Class Library
    Mary Fontana, Martin Neath (Texas Instruments)

    Pragmatic Issues in the Design of Flexible Libraries for C++
    Douglas Hahn, Neil Soiffer (Tektronix)

    A Network Toolkit
    Walter Milliken, Gregory Lauer (BBN)

3:00pm  Break

3:30pm  Applications		Chair: Vince Russo

    An AWK to C++ Translator
    Brian Kernighan (AT&T Bell Laboratories)

    A Class Library for Solving Simultaneous Equations
    Christopher Van Wyk (Drew University)

    LogiC++: An Integrated Logic and Object-Oriented Programming
    Language
    Shanun-inn Wu (University of Minnesota)


			*****

For registration and additional information please contact:

		Judy DesHarnais
		USENIX Conference Office
	        22672 Lambert Blvd., Suite 613
		El Toro, CA  92630
	        Phone:  714/588-8649
		FAX:    714/588-9706