Path: utzoo!attcan!uunet!usenix!jsq From: jsh@usenix.org (Jeffrey S. Haemer) Newsgroups: comp.std.unix Subject: Standards Update, IEEE 1003.5: Ada bindings Message-ID: <521@usenix.ORG> Date: 17 Sep 90 18:23:16 GMT Sender: jsq@usenix.ORG Reply-To: std-unix@uunet.uu.net Organization: USENIX Standards Watchdog Committee Lines: 333 Approved: jsq@usenix.org (Moderator, John Quarterman) X-Submissions: std-unix@uunet.uu.net Submitted-by: jsh@usenix.org (Jeffrey S. Haemer) An Update on UNIX*-Related Standards Activities August, 1990 USENIX Standards Watchdog Committee Jeffrey S. Haemer , Report Editor IEEE 1003.5: Ada bindings Jayne Baker reports on the July 16-20 meeting in Danvers, Massachusetts: Introduction and Overview P1003.5 completed the last touches on Draft 6 of the Ada Language Binding, before sending it to ballot, and considered our options for P1003.5 work beyond balloting. We also addressed the International Standards Organization's (ISO's) refusal to accept and register our draft and revised our balloting schedule. Final Document Modifications This meeting was our last chance to modify our document without a formal IEEE ballot to justify that change. We spent a large portion of the meeting editing Draft 5, chapter by chapter. Draft 6 will ballot in less than two months, so document stability was guarded, but we considered a few proposals for changes. 1. David Emery's Process Group ID as a Separate Type proposal addresses the P1003.1 intention and underlying semantics with respect to Process_Group_ID. Specifically, the proposal recommends that Process_Group_ID be a separate type, or a derived type at a minimum, rather than a part of Process_ID. Dave believes that P1003.1 intended Process_ID and Process_Group_ID to be treated as separate types. This perception is supported by a few operations, such as Wait_For_Process_Group, which suggest the two types are indeed separate. Representing the two types separately would help prevent confusing them. Making them separate would also allow function overloading. For the most part, the group agreed, but felt that the types really do behave more like derived types than separate types. There was some resistance to adopting this proposal because of the number of changes it would require in sections 3 and 4 __________ * UNIXTM is a Registered Trademark of UNIX System Laboratories in the United States and other countries. August, 1990 Standards Update IEEE 1003.5: Ada bindings - 2 - (Process Primitives and Process Environment), but there was also opposition to handing the problem off to the balloting group. We finally decided to consult with the Language Independence group. 2. A proposal submitted by Mars Gralia, of Applied Physics Laboratory, Clarify Functional Option `FIFO', addressed a topic presented in section 8 (Language-Specific Services for Ada), This proposal was accepted because it introduced flexibility that makes it easier for P1003.5 to support the P1003.4 work in the future. 3. Mars also offered a Simplify and Unify proposal, which provoked lengthy, somewhat heated discussion. Specifically, the section 8, Is_append, function returns yes/no, to support an existing application, but there is a naming convention P1003.5 supports that requires Is_Append to return a boolean; indeed, the append function in section 6 (Input and Output Primitives) already returns boolean. Our priorities are + Consistency with the Ada language. + Consistency between the Ada and POSIX portions of the document; + Consistency with existing implementations. Unfortunately, some of these conflict with others in this case. The good news is, we may not have to decide what to do: Ada Interpretation (AI) 544 addresses this issue, However, we did not know, and could not find out, the complete resolution of the AI in Danvers. Moreover, Dave Emery and Hal Jespersen, who are preparing the document for ballot, don't have time to make all the changes Mars's proposal would require between now and ballot circulation. Jim Lonjers suggested that Mars submit a negative ballot on this issue, which would let the ballot-resolution group construct a decision consistent with the AI during ballot resolution. Future Work When Draft 6 enters the IEEE ballot process, the ballot resolution group becomes responsible for ballot coordination and resolution, and the working group is freed to submit new Program Authorization Requests (PARs). IEEE policy only lets a group operate for six months without a PAR, so we have to do our job quickly. We listed possible new work areas, then ranked them based on our effectiveness in the area, the work's importance, and the effort August, 1990 Standards Update IEEE 1003.5: Ada bindings - 3 - required. Here is our list. 1. Test Assertions for P1003.5 A straw-man vote shows the test assertions work as the number one issue, though we suspect neither our corporations nor our individual bosses will be very interested in the work. However, test assertions are a National Institute of Standards and Technologies (NIST) requirement, which may increase corporate interest levels. We do have total control over the test assertions work, and have been directed by the SEC to address it prior to our first round of IEEE ballot. To prevent a delay to the first round of IEEE ballot, the SEC has allowed us to include a ``plan'' for identifying and accomplishing the test assertions portion of the document, rather than the actual test assertions. 2. Shells & Utilities (Ada binding to P1003.2) 3. Language Independence (Helping P1003.1 -- create a language- independent specification for 1003.1-1988, and 1003.1-1990.) The Shell and Tools work and language independence ran close seconds. The Shells & Tools work received a high ranking in the straw-man vote because we feel that the work is do-able and that our effectiveness in the area would be high; moreover, compared to other areas (e.g., the P1003.4 work), the level of P1003.5 effort required would be low. Language-independence ranked high as it is critical to both the current P1003.5 work (see ISO Acceptance and Registration, below) and the POSIX effort as a whole. The people working the language-independent issues are asking for our input now. Moreover, without our input the resulting language-independent work could adversely impact us, and P1003.5 might not have the voting clout during balloting to block anything particularly awful. Several members interested in these issues are already holding Birds-of-a-Feather meetings with the P1003.1 language-independent group. 4. Threads issues (Ada binding to P1003.4a) and Real-Time Extensions (Ada binding to P1003.4) This area generates the most interest among working group members, several of whom have been working with P1003.4 for some time. Ted Baker, former P1003.5 snitch, has written a document on the subject, Real-time Extension for Portable Operating System Ada Binding - Version 0.0 for the U.S. Army HQ CECOM Center for Software Engineering, and provided us with copies for review and consideration. Group consensus is that if we rush into this area, we are likely to stumble over language- independence issues, so we will work with the P1003.4 language- independence small group until their specification is well August, 1990 Standards Update IEEE 1003.5: Ada bindings - 4 - along, and then begin work on the Ada binding in parallel with its completion. ISO Acceptance and Registration Jim Isaak, Technical Committee on Operating Systems (TCOS) Chairman, reported to P1003.5 that ISO declined to accept and register P1003.5 at the recent Subcommittee 22 (SC22) Paris meeting. Their primary reason was the lack of a language-independent specification for P1003.1. How, they asked, can a language-dependent binding exist without a base, language-independent specification? We had also failed to use Working Group 11's procedure-calling mechanism to generate our language bindings. (The WG11 approach produces a direct, language-dependent binding to a language-independent specification.) P1003.9, FORTRAN binding to P1003.1, suffered the same fate for the same reasons. For now, we will provide a copy of P1003.5 Draft 5 to SC22 for their review and comments regarding potential registration problems in the future. To address WG11 concerns, Jim Isaak, POSIX Strategy Director -- note the different hat -- recommended we also forward a copy of Draft 5 to WG11 for review. David Emery and I, both of MITRE, will follow up with a white paper explaining, with examples, why a one-to-one, direct mapping of the functionality described in the language-independent specification to the language-dependent binding is not always optimal, and that a complete (i.e., thick) language- independent specification and a reference-type (i.e., thin) language- dependent binding is neither practical nor possible for some languages. Finally, we will formally submit Draft 7 (or later) to SC22, requesting they recommend it for ISO acceptance/registration as a Committee Document (CD). (CD has replaced ``Draft Proposal'' or DP.) The earliest this could happen is January 1991. Why not Drafts 5 or 6? A new policy, intended to promote document stability requires one IEEE ballot cycle before submitting a draft for ISO registration. IEEE Ballot Issues/Schedule We met with Jim Isaak and Lorraine Kevra, the new TCOS Balloting vice-chair, to discuss the IEEE balloting process and our balloting schedule. P1003.5 produced a schedule for achieving simultaneous IEEE and ISO ballot at the April/Salt Lake City meeting (see my report from last quarter), but because of the problems with ISO, described above, we have revised this schedule. August, 1990 Standards Update IEEE 1003.5: Ada bindings - 5 - Approximately 450 people joined the P1003.5 ballot group. Only 61 of those people are POSIX participants; that is, only one-sixth of all POSIX participants (from all working groups) signed up for our ballot group! The other 390-odd participants are SIGAda members. We are very pleased with this response. Ballot-group formation closed on August 6. Confirmation to applicants was originally scheduled for August 8. Because of the large number of non-POSIX balloters, this date was pushed back to about August 17, but anyone who signed up and has still not received confirmation should contact Bob Pritchard at the IEEE Standards Office, 445 Hoes Lane, Piscataway, NJ 08855, (908) 562-3811. Now that ballot group formation has closed, the group cannot expand. Only people who fail to respond to the initial ballot can be removed (``abstain'' is not a non-response); ballot group members are not required to respond to re-circulation ballots. Bob Pritchard will mail Draft 6 to the P1003.5 ballot group on September 10, 1990. The distribution takes a minimum of two weeks. The ballot period officially begins on September 24, 1990, and closes October 24, 1990. This allows the ballot group at least four weeks for review. Being realistic, we imagine that not everyone will complete their document review. To prevent the uneven coverage that would result from 450 reviewers reading the document from front to not-quite-back, our cover letter requests that reviewers begin their reviews at different spots, using a scheme based on the first letter of the reviewer's last name. If people do not return their ballots by October 24, the IEEE office may send a follow-up letter to the ballot group members requesting that they return their ballots. Steve Deller, of Verdix, will do all necessary coordination with organizations listed on our PAR. Jim Lonjers, of Unisys, with Lorraine Kevra's help, will coordinate ballot resolution, Each chapter will have someone responsible for its resolution, but alternates for each chapter are absolutely critical. Jim Isaak says that, based on his experience, we should assume 20% of the people who do ballot resolution will, for some reason, prove unable to complete their portion of the task. Jim Lonjers will provide the last ballot to the technical reviewers by December 5, 1990. The ballot resolution group will meet at the Tri- Ada meeting in early December to determine how close we are to achieving the 75% minimum acceptance. At that same meeting they will also coordinate ballot responses to objections which cover multiple chapters and objections which produce conflicting responses. We believe they will have resolved the last ballot by January 11, 1991, and a re-circulation ballot is tentatively scheduled for the April August, 1990 Standards Update IEEE 1003.5: Ada bindings - 6 - 1991 POSIX meeting time frame. In IEEE re-circulation ballot, two sets of material are returned to the balloting group: 1. the changes made to the document (either a set of changes, or a new document with change bars), and 2. the unresolved objections. IEEE policy does not allow the balloters' names, companies, or company locations to be returned with the unresolved objections packet; to maintain anonymity, ballot comments are numbered, and individual balloters notified of their own ballot comment numbers. (IEEE and ANSI do maintain balloters' names, companies, and company locations to detect corporate ballots, where and if they occur.) The balloting group gets at least ten days to review the re-circulation ballot, though they can be given more time if the size of the re-circulation material and the document being balloted warrant it. Miscellany Eight Next Generation Computer Resources (NGCR) representatives gave working-group participation quite a boost. Although NGCR people have the bond of all being NGCR representatives, they are not employed by a single employer, but are from all over the United States, and they possess individual interests and strengths. In the past, our core group has only been about a dozen people, so we are pleased by NGCR's interest and participation, and eager to work with them. In April 1990, David Emery went to Sweden, to meet with the Ada 9x committee group dealing with secondary standards and setting priorities of those standards. Secondary standards are those standards not contained within the language itself (i.e., not in the Ada Language Reference Manual). POSIX was a very high priority secondary standard. The next Ada 9x committee meeting will be at the SIGAda meeting in Los Angeles in August. Dave is heading a panel presentation on the P1003.5 Binding at this meeting. The chapter authors will also be a part of this panel. At July POSIX meeting, P1003.5 expressed its special thanks to Dave for his better-than-excellent job as our Technical Editor. He has contributed significant time (much of it his own) and effort to the P1003.5 work, and we appreciate it. August, 1990 Standards Update IEEE 1003.5: Ada bindings Volume-Number: Volume 21, Number 112