PASC SEC N395 Final Report of the PASC SEC Ad Hoc on LIS 22 April 1993, (issue 4.0) Ad Hoc Members: --------------- Stephen Walli (chair) Paul Rabin Paul Borman Michael Hannah Stephen Schwarm Jeff Haemer Introduction ------------ At the January 1993 PASC SEC meeting, the issue of Language Independent Specifications (LIS) as a standards development method appropriate to POSIX standards was called into question. An Ad Hoc group was created to investigate the issues and concerns with LIS and report back at the April 1993 PASC SEC meeting. (The full text of the SEC resolution is attached to the report.) The Ad Hoc was charged to [SEC R9301.09]: Consider all aspects of language independence, with no limitation. Explicitly consider dropping requirements for LIS altogether. Consider international standards ramifications. If the ad hoc recommends waiting for further developments, it should define what should be done in the interim. Produce a liaison statement to be shared with WG15 and other parts of the international community asking for bilateral discussion. Seek LIS customers and advocates in order to get their real underlying requirements for LIS. The Ad Hoc worked via email between the January and April 1993 PASC meetings. During the April meeting, the Ad Hoc met regularly to develop and deliver this report. Based upon the experiences of the past few years, the PASC LIS Ad Hoc believes there are more practical and expedient methods of accomplishing the goals of an LIS, given current experience, technology and project staffing. It is the recommendation of the PASC SEC LIS Ad Hoc to drop the requirement of producing LIS. The Ad Hoc further recommends an alternative means to fulfill the original objectives for which the LIS methods and policies were adopted. The Goals of Language Independent Specifications: ------------------------------------------------- LIS methods and policies are intended to : -- support the development of additional language bindings by bodies unrelated to the initial standards development body. -- help ensure the semantic equivalence of different language bindings for an API. -- Support the co-ordination of work in accordance with the document structure plan and synchronization plan. -- facilitate the process of developing language bindings. -- permit a language binding to be developed in a manner most natural for the programming language. JTC1 requires IEEE POSIX standards to be cast as LIS with language bindings as they are forwarded for international standardization. SC22/WG15 further requires that the documents be presented as ``thick'' LIS with ``thin'' language bindings. Several years ago the WG15 US TAG and the IEEE PASC working groups accepted this as a requirement for their documents to be forwarded to ISO. (SC22, Paris, 1988 and WG15, Orcas Is., 1990) The IEEE POSIX working groups have spent considerable time and effort since then developing an LIS methodology, which was approved by WG15, (described in SC22/WG15-N173) communicating regularly with JTC1/SC22/WG11 (Language Binding Techniques), and working with the methodology within the PASC working groups. The cost in time and money has been substantial in this attempt to fulfill the requirements agreed to in 1988. The LIS methods and policies have not proven to be cost effective: the methodology used has proved more expensive than expected, and it satisfied only some of its objectives. The LIS requirement has also contributed to making the co-ordination efforts more complex. The PASC SEC LIS Ad Hoc believes it has arrived at an alternative that is adequate to the needs of its customers, and fulfills the objectives of producing an LIS. Analysis of the Current LIS Situation: -------------------------------------- The PASC SEC LIS Ad Hoc began by addressing the fundamental question: Who are the customers for PASC standards? PASC produces interface definitions standards for application portability at the source code level, for use by application developers, and system implementors. We identify these customers in our scope statements. These essentially include ourselves. We get together because we have a common interest as implementors and application developers to develop a standard in a particular area of technology. PASC attempts to develop standards based on prior art and experience, and has developed rules within the PMC for PAR review criteria based on this premise. This implies that PASC's experience is based in the particular programming language which reflects that history. PASC POSIX standards support multiple programming languages, (Ada, C, FORTRAN 77). PASC requires that all language specific bindings to a POSIX interface definition be semantically equivalent. One way of providing equivalence between language bindings is to derive the bindings from a common abstract interface specification. Other ways are identified below. The PASC SEC LIS Ad Hoc believes the number of language bindings standards to the POSIX interface definitions will be small. Customer requirements include timeliness of delivery, and usability of product. There is an economic concern within the working groups in PASC, (not a management nor a technical one) that we are not satisfying those requirements. While we believe these customer requirements are the most important ones, we also recognise the validity of the objectives listed above which the LIS methods and policies were intended to satisfy. We believe the following recommendations satisfy both types of requirements. PASC SEC LIS Ad Hoc Recommendations and Concerns: ------------------------------------------------- While the LIS work has been developing in the PASC working groups this past few years, alternatives have been demonstrated that make the best and most appropriate use of the experience and resource available to the POSIX standards development working groups. The recommendations here are based upon that proven model. 1. The LIS Ad Hoc recommends that PASC SEC cease requiring the production of the LIS to address our customers needs more urgently. This does not mean that LIS Ad Hoc, PASC SEC, or its working groups believe the LIS to be wrong. We wish to allow the LIS methodology to be used as a valuable tool for standards development by the working groups when and where appropriate. 2. The LIS Ad Hoc recommends the PASC SEC require working groups to add appropriate statements of conformance for future bindings in the first language binding which defines a base interface specification. This supports independent development of language bindings, and helps to ensure semantic equivalence. 3. The LIS Ad Hoc recommends the PASC SEC require working groups to identify requirements for interoperability for future bindings in the first language binding which defines a base interface specification. This supports independent development of language bindings, and helps to ensure semantic equivalence. 4. The LIS Ad Hoc recommends the PASC SEC set-up a procedure for resolving conflicting interpretations between different language bindings. This helps ensure semantic equivalence between different language bindings. 5. The LIS Ad Hoc recommends the working groups continue to use the following existing mechanisms to help ensure semantic equivalence of language bindings: -- working group co-ordination -- co-ordination ballots between groups -- the balloting process 6. The LIS Ad Hoc recommends the SEC review and revise as necessary the current document structure plan and synchronization plan. The review should address issues such as thick/thin issues, what standards amends which base standards, and what binds to it, etc. 7. The PASC SEC LIS Ad Hoc recommends that the SEC forward this report to WG15 through the WG15 US TAG as a statement of its position with regards to the production of LIS. PASC working group experience has demonstrated that the two goals of language independent specifications -- to facilitate the process of developing language bindings, and to permit a language binding to be developed in a manner most natural for the programming language -- can be satisfied by these existing processes. The Ad Hoc recognises the following IEEE PASC project concerns resulting from these recommendations: -- The work that has gone on to date with respect to the POSIX.1/LIS needs to be addressed. -- The work that has gone on to date with respect to the POSIX.12 LIS which has been used to allow a C sockets and C XTI binding to be defined, needs to be addressed. -- Existing PARs need to be revisited with respect to the document structure plan. -- Possible impact on non-POSIX PASC LIS work, such as 1238, needs to be reviewed. International Concerns and Recommendations: ------------------------------------------- The Ad Hoc recognise the following concerns and possible ramifications from a decision to cease to mandate the production of the LIS as the basis for PASC POSIX standards: -- PASC standards may cease to be approved for ISO standardization. -- ISO POSIX development may move out of the hands of PASC, which may result in the development of ISO POSIX standards conflicting with the IEEE POSIX standards. -- Competing standards may be introduced at the ISO level, eg. GOSI, ExTRA. -- Possible prejudice against National Body development for future NPs. While these are all recognised concerns, none of them can be directly addressed by PASC alone. We recommend that PASC initiate communications with the WG15 US TAG, WG15, SC22, and JTC1, to convey the reasons why PASC believes there is a more practical and economic way to develop standards for interface definitions for portable applications at the source code level. We recommend that PASC SEC continue to pursue the creation of co-ordinated consistent standards which are acceptable as ISO standards, and actively work through existing channels to reach this goal. Attachement 1 - The Text of the PASC SEC January 1993 Resolution R9301.09 WHEREAS The IEEE POSIX projects have spent considerable time and effort investigating and experimenting with LIS and binding methodologies for the last three years, in coordination with SC22 WG11, and the essence of that work is being forwarded to ISO for possible input to WG11; and WHEREAS The primary customer of a *complete* LIS is a binding writer; our own customers of this methodology and the documents it produces (IEEE 1003.5 and 1003.9) still question these methods; and WHEREAS Some have serious concerns with respect to the two-book/two-context problem, thick/thin problem, etc. which arise from the current model, and we do not wish to compromise the production of useful and useable base-language bound documents until ISO can give us a better proven model; and WHEREAS We recognize there is a risk that ISO may object to any unilateral action we may take and do something else, THEREFORE, BE IT RESOLVED THAT PASC SEC shall refer the issue of Language Independent Specifications to an Ad Hoc committee, to report back to the SEC in April 1993. The committee shall be charged as follows: Consider all aspects of language independence, with no limitation. Explicitly consider dropping requirements for LIS altogether. Consider international standards ramifications. If the ad hoc recommends waiting for further developments, it should define what should be done in the interim. Produce a liaison statement to be shared with WG15 and other parts of the international community asking for bilateral discussion. Seek LIS customers and advocates in order to get their real underlying requirements for LIS. The committee shall be chaired by Stephe Walli, and shall include at least Steve Schwarm, Paul Rabin, Paul Borman, Michael Hannah, and Jeff Haemer. (S. Walli) Attachement 2 - The PASC SEC LIS Ad Hoc Participants Name Organization ---- ------------ Stephen Walli EurOpen IR, Ad Hoc Chair Chris Harding X/Open, POSIX.12 member John Hill Ray Ricco SAIC, POSIX.5 member Paul Rabin OSF IR, POSIX.1, WG15 US TAG, Ad Hoc member Kevin Dodson NGCR, OSSWG Kathy Liburdy Clemson University Michael Hannah Sandia Labs, POSIX.9 Chair, Ad Hoc member Loren Buhle DECUS IR, University of Penn. Jason Zions Hal Computer Systems, POSIX.8 Chair, PMC Chair, SICC Chair, DSSC Vice-chair Barry Needham Amdahl, WG15 US TAG Petr Janecek X/Open IR Lowell Johnson Unisys, POSIX.3.2 Chair Curtis Royster DoD/DISA Stephen Schwarm Mitre, POSIX.5 member, Ad Hoc member Nick Stoughton USENIX Stds Report Editor Paul Borman Cray, POSIX.14 member, Ad Hoc member Jeff Haemer USENIX IR, Ad Hoc member Craig Meyers POSIX.21 Chair Charles Arnold RESOLUTIONS Resolution LAH-1 WHEREAS PASC SEC and its working groups wish to address customer needs more urgently, and WHEREAS the PASC LIS Ad Hoc believes there are more practical and expedient methods of accomplishing the goals of an LIS, given current experience, technology and project staffing, THEREFORE BE IT RESOLVED, that the PASC SEC rescinds or amends, as appropriate, all resolutions approved by the SEC which require the production of LIS standards, so that such requirement is no longer imposed. Resolution LAH-2 WHEREAS Semantic equivalence of independently-developed language bindings is important and desired, THEREFORE, BE IT RESOLVED, that the PAS SEC requires working groups defining base interface specifications to include in their standards statements identifying requirements for interoperability for future bindings to that base interface, AND RESOLVED, that the PAS SEC requires working groups defining base interface specifications to include in their standards appropriate statements of conformance for future bindings to that base interface. ACTIONS The PASC SEC directs the Vice-Chair for Interpretations to set up a procedure for resolving conflicting interpretations between different language bindings. The PASC SEC requests the SICC, in cooperation with the Vice-Chair for Technical Editing, to review and recommend revisions, as necessary, to the current document structure plan and synchronization plan. The review should address issues such as thick/thin issues, what standards amend which base standards, and what binds to it, etc. This review shall be completed no later than the October 1993 meeting of PASC SEC. The PASC SEC directs the SEC chair to forward this report to the WG15 US TAG as a statement of the SEC position with regard to the production of LIS, and to ask the WG15 US TAG to forward this statement to WG15.