News About Standardizationby Keld Simonsen
Keld Simonsen is active in ISO standardization, particularly in internationalization, POSIX, C, C++, and making it all available on the Web.
This is my first time reporting to ;login: readers about recent and forthcoming events in the standards world. I am doing this out of Europe, and primarily via the ISO channels, so my angle will be a quite international one. My interests in standardization are mostly in internationalization, UNIX/Linux, and the Net. Being non-American and not a native speaker of English is quite a disadvantage in the standardization world, and the difficulties make me work hard for true international, open cooperation on standards, especially within ISO and the Internet Society.
This time I will report briefly on news in internationalization, Java, C, C++, and UNIX/POSIX.
A new standard on ordering of strings, covering all of ISO 10646, is about to be approved as ISO/IEC 14651. The final ballot is likely to be issued in April, with approval in June. The tables of the standard are planned to be available from the ISO server at <http://www.iso.ch/> and there will most likely be a pointer to it from the Web of WG20 at <http://www.dkuug.dk/jtc1/sc22/wg20/>.
Another standard, or actually technical report, is hopefully also to be finalized. This is on how to specify cultural conventions, in an enhanced POSIX locale-compatible style. This TR has support for ISO 10646, the big 32-bit character set, and the above-mentioned sorting standard, and it has been implemented for glibc 2.2. The Americans in the WG20 working group, who are quite Unicode-oriented, are not amused with this specification, and they were some of the prime movers for making it a technical report, because it does not build on Unicode file formats and Unicode data, but rather on POSIX-compatible formats and data that have been widely employed in Linux and available from the ISO POSIX working group.
A standard on internationalization APIs, ISO 15435, is in the works. It covers the functionality needed for the data formats defined in the new cultural-conventions technical report. There is also some American resistance in the WG20 working group, as many companies have already made their own specifications for the functionality of these APIs. My take is that we really need a standard to provide portability in this area to facilitate support for the very important area of internationalization in as many applications as possible, and it should be as consistent as possible. The APIs build on C and C++ functionality but have been enhanced to cater to threads and improved functionality as described in the new locale standard mentioned above. Some interest in implementing this standard has been expressed in the Linux communities.
A third standard in the battle zone is the revision of the standard on the cultural register (ISO 15897). The Americans are once again not happy with such a standard, which is made in Europe and outside their control, and which builds extensively on the POSIX standards. In this case, the standard is already fully approved and applicable today. The data registered with the standard, including POSIX locales and char maps, is available from <http://www.dkuug.dk/cultreg/>. A number of countries in Europe are in the process of delivering their locales to the register.
Common to these standards is that they all build on C and POSIX technology, they are developed in the open standards world of ISO, and they are not under the control of the Americans. The Americans gathered in the Unicode consortium try to pull their standards through, which is quite understandable. The problem is only that these are standards on cultural issues, where each country should know best how their culture behaves and what serves them best. And here the Silicon Valleybased Unicode consortium tries to decide the culture for all countries of the world.
This work is also connected to the discussion about whether an association should be involved in writing the standards, or be giving out information on standards. I think that we should do both. In some cases, if we did not participate, there would not be anything to tell about. For example, there would have been no internationalization support in POSIX without the pressure from DKUUG, EurOpen, and USENIX, and 8-bit ESMTP would not have happened. The above-mentioned standards on the cultural register, the new locale standard and the i18n API standard, rely heavily on work from associations. It is also important that it should be a democratic process that determines how vital parts of our common information-age future should look. It should not be just a single or a couple of dozen large firms that decide how most computers in the world should look. So, participate!
More information on these internationalization standards, including the latest drafts, is freely available from the WG20 Web site at <http://www.dkuug.dk/jtc1/sc22/wg20/>.
NEW UNIX/POSIX STANDARD
The cooperation among IEEE, The Open Group (X/Open), and ISO is now underway for the common UNIX/POSIX standard. Everybody can participate in the process; look at <http://www.dkuug.dk/ jtc1/sc22/wg15> for the Austin Group. It is a revision of the whole suite of UNIX and POSIX standards. The plan is to make just one document, based on the UNIX 98 Single UNIX Specification, and the same document will serve as the standard in all of the three participating organizations. It is not clear to me, though, whether the name on the standard will be UNIX or POSIX. It is expected that the Austin Group will send the combined document for ballot in May 2000 to the three participating organizations. I look forward to seeing how this three-way balloting procedure will work.
JAVA STANDARD WITHOUT SUN?
Sun has withdrawn its application to make Java an ECMA standard. This is because Sun wants full control over the standard, and according to the procedures of ECMA, ECMA will themselves have full control over the standard (that is, the firms cooperating in ECMA, e.g., IBM, HP, Microsoft). Sun tried earlier to get Java accepted as an ISO standard; however, Sun withdrew that application too, because ISO also demanded full control over the process.
ECMA and ISO are now considering producing Java standards without Sun. These should in the first instance be the Java Virtual Machine and Java Core Language. It is thought to be feasible to make a standard without Sun's cooperation, because there is much text that can be recycled from the C and C++ standards and from textbooks on Java. There are previous instances of standardization without the cooperation of the originators, e.g. POSIX!
Participation in the ISO Java Study Group is open to all free of charge; send mail to <email@example.com> with a body containing the word "subscribe".
C++ DOCUMENTS ACCESSIBLE
If you are interested in C++, then you will be pleased to hear that all the technical papers from the WG21 working group are now freely accessible at <http://www.dkuug.dk/jtc1/sc22/wg21>; look for "papers." ISO has agreed to a new plan to make a technical report about support on embedded processors, with a proposal about portable support for hardware I/O. WG21 is also processing defect reports on the ISO C++ standard from 1998, and the corrections approved to the standard are freely accessible at the above URL (see issues lists).
C STANDARD APPROVED
The new ISO C standard C99 was published in December 1999. See <http://www.dkuug.dk/jtc1/sc22/wg14/>. WG14 is currently working on a ratio-nale for the new standard, with explanations of how the new components should be used. This forthcoming ratio-nale will become freely available at the above URL.