home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 January
/
usenetsourcesnewsgroupsinfomagicjanuary1994.iso
/
sources
/
std_unix
/
reports
/
x3j16
< prev
next >
Wrap
Text File
|
1991-09-06
|
9KB
|
330 lines
.\" Uses -mm macros
.ds Rh "X3J16: C++
.ds Au "Mike Vilot <mjv@objects.mv.com>
.ds Dy "August, 1991
.ds Dt "June, 1991
.ds Lo "Lund, Sweden
.ds Ed "Stephen R. Walli <stephe@usenix.org>
.ds Wd "USENIX Standards Watchdog Committee
.if '\*(Su'' \{\
.ds Su "the \*(Dt meeting in \*(Lo:
.\}
.if n \{\
.tm Subject: Standards Update, \*(Rh
.tm From: \*(Ed
.tm Reply-To: std-unix@uunet.uu.net
.tm Organization: \*(Wd
.tm
.\}
.if n \{\
.nh
.na
.\}
.AU "\*(Wd"
.AF "\*(Ed, Report Editor"
.MT 4
.S 12
\*(Rh
.sp
.P
\fB\*(Au\fP
reports on \*(Su
.P
.HU "Current Status"
.P
The \s-1ANSI\s0 \s-1X3J16\s0 committee took a major step
towards internationalization at its June meeting.
This was the first joint meeting between \s-1X3J16\s0 and
\s-1ISO\s0 \s-1WG21\s0.
\s-1WG21\s0 is the \s-1ISO\s0 C++ working group.
\s-1X3J16\s0 and \s-1WG21\s0 are roughly
peer organizations.
.P
.HU "June meeting"
.P
The Lund Institute of Technology hosted the meeting in
Sweden.
The week's major activities focused on understanding the
myriad details of producing a single, international C++
language standard.
.P
The \s-1X3J16\s0's sub-groups focus was on the key topics listed in
the goals statement developed at the March, 1990 meeting.
They worked by electronic mail between meetings, and reported
their progress.
.br
.P
.B "International Concerns"
.br
Steve Carter, of Bellcore, presented the major international
concerns.
.P
International cooperation is an explicit goal of
\s-1X3J16\s0,
and the committee devoted the entire first
day's discussion to international concerns.
Most members want to avoid the
difficulties encountered during the development of the C
language standard.
.P
Much of the work focused on attaining a smooth
coordination with \s-1WG21\s0 without losing technical
effectiveness.
The committee agreed to continue
emphasizing informal discussions and informal "straw votes"
before making formal decisions.
All members of \s-1WG21\s0 will be added to the
email lists, and will receive \s-1X3J16\s0
paper mailings.
.P
On the other side, \s-1WG21\s0 voted to hold its technical
meetings jointly with \s-1X3J16\s0.
They appointed Jonathan Shopiro as their editor,
which means both committees have the same editor.
.P
\s-1X3J16\s0 decided to conduct a letter ballot on the
question of converting to a Type "I" process.
This means developing an international standard, rather
than developing a domestic standard followed by an
international standard (as was the case for the C language).
A straw vote indicated most members would vote in favor of
the change.
.P
The committee dissolved the International Concerns
working group, since it has served its purpose.
Steve
Carter, serving as Convener of \s-1WG21\s0, will continue to
address international C++ concerns.
.P
.B "Editorial"
.br
Jonathan Shopiro, of \s-1AT&T\s0, presented the Editorial
group's work.
.P
The editorial change that simplified the treatment of names
and name lookup,
merging the concepts that had previously
been treated under the topics of dominance and name hiding,
remained in the document.
.P
Much of the recent work on the document has been in
clarifying or defining basic terms.
For example,
the basic
unit of storage is a byte
In the C standard,
it is a
character,
which confuses the notion of what type "char" is
supposed to represent,
especially in light of 8-bit and
larger character sets.
The process of resolving the definitions of the two base
documents
continues.
(These are the Annotated C++ Reference Manual and the C
standard.)
.P
One minor change to the document format:
the size is now
suitable for A4 paper.
.P
.B "Formal Syntax"
.br
Reg Charney, of Program Conversions, presented the work of
the Formal Syntax group.
.P
The bulk of the discussion concerned the change that renamed
most of the non-terminals in the grammar.
There are still more proposed changes.
.P
The conflict between the virtues of regularizing the naming
versus the evils of gratuitous changes resurfaced.
Bjarne Stroustrup made the strongest criticism,
observing
that the changes had been proposed and adopted without
sufficient principles.
He noted that the lack of such principles invited the kind of
"random changes" that were presented at the June meeting.
He also observed that the changes had not even been checked
against the C standard's grammar.
.P
.B "Core Language"
.br
Andy Koenig, of \s-1AT&T\s0, presented the Core Language
group's work.
.P
Most of the Core Language discussion centered on name resolution issues.
These issues are highlighted by the interactions of nested
classes,
inline friend function definitions,
and static class
members.
.P
This work has helped identify ambiguities in the
present wording.
Although there has been progress, open issues remain.
For example,
defining a friend function in a class causes the
name of the friend to be made available in an "enclosing"
scope.
The cases involving nested and local classes still have to be
resolved.
.P
.B "Environment"
.br
John Wilkinson, of Silicon Graphics, presented the work of
the Environment group.
.P
Discussion continued on static
initialization order for objects in different translation
units.
The group proposed two new
rules intended to provide correct initialization that still
accommodated dynamic linking:
.DL
.LI
Nonlocal static objects defined in a translation unit must be
initialized in the order that the definitions appear in the
translation unit.
.LI
The nonlocal static objects defined in a translation unit
must be initialized before any object or function defined in
that unit is used by any other translation unit;
the nonlocal
objects defined in the translation unit containing main()
must be initialized before control enters main().
.LE
.P
Specifying translation limits in
the standard was discussed,
but
seemed to generate more heat than light, and
nothing was decided.
.P
.B "Libraries"
.br
Jerry Schwarz, of Lucid, presented the Library group's work.
.P
There is an evolving proposal for a standard string class,
and its interaction with
internationalization concerns.
The tradeoff involves generality
(strings of both single- and
multi-byte characters)
versus efficient implementation.
This discussion continues.
.P
The group also worked on issues of conformance, and
describing the options available to implementations that
choose to extend the standard library.
For example,
the implementation may provide the standard
classes by deriving them from base classes not mentioned in
the standard,
or as instances of templates not mentioned in
the standard.
As another example,
an implementation may add members to a
class definition,
with the constraint that private virtual
functions must be in the implementation name space.
.P
Work also progressed on standard exceptions.
One line of investigation is to use exceptions to clarify
those aspects of the language that are vague or "undefined."
For example,
the default new_handler could throw a
storage_error exception.
.P
.B "Language Extensions"
.br
Bjarne Stroustrup, of \s-1AT&T\s0, presented the work of the
Extensions group.
.P
The group proposed
a change that
adds digraphs and new keywords as synonyms for certain
characters.
For example, '{' can be written as '<%', '&=' as 'and_eq',
and so on.
This allows expression of C++ programs in character sets that
do not include certain of the ASCII characters.
It is a proposal Bjarne has been working on with Keld
Simonsen for over a year,
and their work has been coordinated
with the \s-1ISO\s0 \s-1WG14\s0 (C language).
The committee adopted this proposal.
.P
The group is working through a long list of proposals for
changes to the language.
Some of the items are:
.DL
.LI
adding 8-bit (i.e. international) characters in identifiers;
.LI
allowing virtual functions in a derived class to use a more
specific return type than the base class' version of the
function;
.LI
allowing overloading of operator . (dot);
.LI
a name space control mechanism.
.LE 1
The largest issue currently lurking in the Extensions
category is the addition of support for run-time type
information.
There will be much discussion on this topic over the next
months.
.P
.B "C Compatibility"
.br
Tom Plum, of Plum-Hall, presented the work of the C
Compatibility group.
.P
The group continued its investigation of the vocabulary
differences between C and C++.
Only a few of the differences have been resolved, and Tom
plans to meet with Jon Shapiro to decide which terms can be
incorporated as C++ definitions.
.P
.HU "Next events"
.P
The next three X\s-1\&3J16\s0 1991 meetings (and their hosts)
will be:
.BL
.LI
November 11-15,
Austin \s-1TX\s0 (TI)
.LI
March 9-13 (or 16-20) 1992,
London, UK (BSI and Zortech)
.LI
July 13-17
Toronto Canada (IBM)
.LE 1
.P
Membership on an \s-1X3\s0 committee is open to any
individual or organization with expertise and material
interest in the topic addressed by the committee.
The cost for voting or observer membership is $250.
Contact the chair or vice chair for details.
.P
.nf
.P
Chair: Dmitry Lenkov
\s-1HP\s0 California Language Lab
19447 Pruneridge Avenue \s-1MS\s0 47 \s-1LE\s0
Cupertino, \s-1CA\s0 95014
(408)447-5279
\s-1FAX\s0 (408)447-4924
email dmitry\%hpda@hplabs.hp.com
.P
Vice Chair: William M. Miller
Glockenspiel, Ltd
P.O. Box 366
Sudbury, \s-1MA\s0 01776-0003
(508)443-5779
email wmm@world.std.com
.fi