Subject: SC22 N2568 - Approved SC22 Business Plan

From: "william c. rinehuls" <[email-masked]>
Date: Tue, 26 Aug 1997 16:19:28 -0400 (EDT)

___________________ beginning of title page ________________________
ISO/IEC JTC 1/SC22
Programming languages, their environments and system software interfaces
Secretariat:  U.S.A.  (ANSI)

ISO/IEC JTC 1/SC22
N2568

August 1997

TITLE:
Approved Business Plan for JTC 1/SC22, Programming languages, their
environments and system software interfaces

SOURCE:
Secretariat, ISO/IEC JTC 1/SC22

WORK ITEM:
N/A

STATUS:
This response has been forwarded to ISO/IEC JTC 1.

CROSS REFERENCE:
SC22 N2573, N2574 (Res. 97-24)

DOCUMENT TYPE:
N/A

ACTION:
To SC22 Member Bodies, WG Conveners and HODs for information.

Address reply to:
ISO/IEC JTC 1/SC22 Secretariat
William C. Rinehuls
8457 Rushing Creek Court
Springfield, VA 22153 USA
Telephone:  +1 (703) 912-9680
Fax:  +1 (703) 912-2973
email:  [email-masked]

______________________ end of title page; beginning of plan ___________

                              ISO/IEC JTC1/SC22 N2568 

BUSINESS PLAN FOR JTC1/SC22, Programming Languages, their Environments,
and System Software Interfaces

PERIOD COVERED:  December 1996 - September 1997

SUBMITTED BY:  Robert H. Follett, Chairman

1.  MANAGEMENT SUMMARY: 
 
1.1 JTC1/SC22 STATEMENT OF SCOPE: 

Standardization of programming languages, their environments and systems
software interfaces such as: * specification techniques; and * common
facilities and interfaces.  Excluded:  specialized languages or
environments assigned to the program of work of another Subcommittee or
Technical Committee

1.2 PROJECT REPORT

SC22 has at total of 53 assigned projects which, after subdivisions,
result in 94 identifiable items of work (projects and subprojects).  Of
these, 53 are currently active in development and 41 are published
standards, technical reports and amendments that are in maintenance mode.
None are planned for withdrawal at this time.

The SC22 Secretariat's report contains a complete listing of these
projects and related target dates.

1.3 COOPERATION AND COMPETITION

Ada (WG9): 

There are two major professional societies in this area: the Special
Interest Group on Ada (SIG) of the Association for Computing Machinery and
Ada-Europe.  The semi-annual meetings of WG9 are scheduled to coincide
with the major conferences organized by these two groups. Informal but
close cooperation with SIGAda is maintained by the convener.  The UK Head
of Delegation to WG9 is also an officer of Ada-Europe.

There is one major vendor consortium, the Ada Resource Association (ARA). 
Formal liaison with ARA is maintained.  WG9 is looking for opportunities
to transpose de facto standards from the ARA.

The United States Department of Defense (DOD), Ada Joint Program Office
(AJPO) has a continuing interest in the Ada language.  Liaison is assured
because AJPO funds the convener to serve in his position.  In addition,
liaison and/or consultation are applied as appropriate with WG4 (COBOL),
WG11 (Language-Independent Standards), WG14 (C Language), WG15 (POSIX),
WG16 (LISP), WG21 (C++), SC21/WG3 (IRDS), the SC22 Java Study Group, and
the IEEE Computer Society Software Engineering Standards Committee.

APL (WG3): 

WG3 has liaison with SC2/WG2 which has been very satisfactory in
developing the amendment that designates a correspondence between symbols
used by the APL language and the IS 10646 standard.

C (WG14): 

Where appropriate, WG14 has established active liaisons with other SC22
working groups.

C++ (WG21): 

WG 21 has liaisons with other SC22 working groups on C, POSIX and
Internationalization.  With regard to the latter, it is using the WG20
guidelines on extended characters.  It also takes account of the
recommendations from WG11 on cross-language standards.

COBOL: 

WG4 cooperates closely with NCITS COBOL Technical Committee J4, to whom
SC22 has delegated the technical development and maintenance of COBOL. WG4
works closely with the X/Open COBOL working group through a Category C
liaison.  WG4 also has liaisons to SC22 WG11 for language independent work
and WG20 for internationalization. 

Fortran (WG5): 

WG5 cooperates closely with the ANSI NCITS/J3 Fortran Technical Committee,
to whom it has delegated the technical development of Fortran 2000 as well
as the maintenance of Fortran 95 (IS 1539-1:1997).  There is also close
contact with the industry-driven High Performance Fortran Consortium, with
many members of the HPF Consortium also being members of J3 and/or WG5. 
Many of those responsible for the development of commercial Fortran
compilers are members of J3 and/or WG5.  Other important liaisons are
those with IFIP WG2.5 (Numerical Software) and ISO/IEC JTC1/SC22/WG20
(Internationalization).

Internationalization (WG20): 

WG20 works closely with CEN/TC304 which is developing an ordering standard
for European languages and also developed ENV 12005 which is a standard
for registering cultural conventions.

Since internationalization is important in many aspects of information
technology, WG20 has an extensive list of liaisons, primarily with a
number of SC22 working groups such as WG4, WG5, WG14, WG15, WG21, and
WG22.  Outside SC22, WG20 has liaisons with SC18, SC18/WG9, SC2/WG2, and
SC21/WG3.  Outside JTC1, in addition to CEN/TC304, WG20 has liaisons with
GUIDE/SHARE Europe, the Open Group, and ISO TC37/SC2/WG3.

Language Independent Projects (WG11): 

The WG11 documents are mainly produced to be used by other programming
language committees.  Therefore, WG11 maintains liaisons with many of the
SC22 WGs.

Lisp (WG16): 

The WG16 activities that produced ISLISP were done by collaborative work
of six regularly participating P-member nations; France (Convener), United
States (Project Editor), Canada, Germany, Japan, and United Kingdom. These
nations had close collaboration with their local Lisp communities; for
example, EuLisp community in European nations, X3J13 in United States, and
IPSJ-SIGSYM community in Japan.  The ISLISP design reflected the
experiences of COMMON LISP, EULISP, LE LISP, and SCHEME, and took into
account common practices in the Lisp community.  ISLISP is a small Lisp,
but it is designed with extensibility in mind, trying also to keep
compatibility with existing Lisp dialects.  ISO/IEC ISLISP, ANSI COMMON
LISP and ANSI/IEEE SCHEME are co-existing and complementary in the Lisp
community, since they have their own distinctive features in languages,
systems, and applications. 

Modula-2 (WG13): 

WG13 cooperates with as many compiler writers as possible, and contacts
with industry work quite well.  Where appropriate, WG13 has established
contact with other SC22 working groups. 

PCTE (WG22): 

The most active liaisons maintained by WG22 have been with ECMA/TC33,
where most WG22 members are also ECMA/TC33 members, and with ISO/IEC
SC7/WG11.  In the latter case, the WG22 liaison in SC7/WG11 is the project
editor of the subproject dealing with the definition of rules to derive
PCTE Schema Definition Sets from the standard models adopted by WG11
(basically CDIF models).

POSIX (WG15): 

WG15's work is done with close cooperation of The Open Group (TOG, aka
X/Open), Usenix, Europen, and other UNIX organizations.  The bulk of
development for work brought into WG15 has been done in cooperation with
IEEE's Portable Applications Standards Committee.  TOG is a category "C" 
liaison, and authorized to submit PAS specifications in areas relevant to
WG15's work.  While most "UNIX" type systems conform to the specifications
from WG15 (POSIX), there is significant competition from de-facto
standards, typically "Windows 95" and "NT".

Prolog (WG17): 

WG17 cooperates with the whole Prolog community.  Where appropriate, WG17
has established contact with other SC22 working groups. 

VDM-SL (WG19): 

The VDM group involves collaborative work of six participating P-members: 
UK, Denmark, Holland, France, Japan and the USA.  The VDM-SL
standardization work was also supported by the EU by various grants. 

Z Notation (WG19): 

The work of the Z group involves the participation of members from the UK,
USA, Australia, Japan, Germany, France, Italy, Brazil, Canada, and
Ireland. Members are drawn from industry, government, and universities.
The Z standardization work has been assisted by grants from industrial and
government agencies in the USA and Europe.

2.0 PERIOD REVIEW
 
2.1 MARKET REQUIREMENTS,

SC22 standards are produced in response to market requirements covering
extensive and diverse areas of the marketplace.  Traditionally, SC22 has
focused on high level programming environments to improve productivity,
portability of applications, portability of programmers and compatibility
of applications over time.  While press attention is primarily devoted to
newer language and interface areas, it is important not to overlook the
importance of older technologies where there is significant user
investment.  Some of SC22's projects span 25 or more years of application
development and support an inventory of hundreds of millions of lines of
currently operational code.  Adding current technological capabilities to
older programming languages can extend the life of applications and
provide continued return on investment to current users.  Some specifics
on market requirements in particular SC22 areas follow.

Ada:  The most fundamental change in the market has been action by the US
Department of Defense (DOD) to drop its "mandate" of Ada in all military
systems.  The choice of language to be used will now be made by each
individual development program.  Certain segments of the DOD remain
committed to favoring Ada, notably the real-time, embedded systems
community.  DOD has committed to increase funding to support the
activities of the Ada Joint Program Office.  In the commercial segment,
Ada continues to have a strong presence in large applications requiring
high reliability, such as Air Traffic Control and railroad safety systems.

APL:  All APL vendors seem to be focusing their efforts on improving user
interface and on bridges to other applications.  For instance, one new APL
product gathers numeric information from various data suppliers, stores it
in multi-dimensional arrays, and then presents it to the user in useful
and coherent formats, in some instances making use of the methods of time
series analysis.  Such a tool is in great demand to those who follow the
stock markets of the world.  This application illustrates three aspects
that APL does best: its handling of arrays, its firm mathematical
foundation, and its amenability to rapid prototype development.  Issues
for users of personal computers include the need for access to more
operating system features and user interface features.  These are being
met by the active developers. 

The current draft of Extended APL addresses a great many of the market
requirements for APL, but not all of them.  Even as the draft standard
progresses, new requirements are evolving.  With the current trend to
web-based operation, users are beginning to re-configure existing APL
applications as servers integrated with web clients.  Some APL vendors
have already introduced language extensions to support this environment.
Thus, continued evolution of the international standard for APL is
essential to provide the benefits of new technologies and new environments
to APL users worldwide.

C:  The revision to ISO/IEC 9899 is in response to user community pressure
and to implementors concerns to keep current with today's programming
trends and market. The working group believes that evolution of Object
Oriented programming, numerical extensions that were proposed by the US
committee, internationalization, advancements in character set
standardization, cross-language standards and cross-language bindings all
need to be considered in the revised standard.  Most of these issues were
not considered during the technical discussions for the current ISO C
Standard.

C++:  More than one million people are estimated to be programming in C++. 
This marketplace is very eager for the C++ international standard to be
completed.

COBOL:  COBOL continues to be widely used for new development and for
enhancement and re-engineering of existing applications.  Many factors
drive the market for COBOL standardization:

* Deployment of applications to workstations and distributed environments
and the growth of COBOL in Unix environments has generated requirements
for new features in the language.  These needs have been met by
implementor extensions to the language, in different ways by different
implementors, leading to a need for post-implementation standardization.

* Market pressure for new technology led COBOL vendors to cooperate on
object-oriented design through the standardization process.  Early
implementations of the object-oriented features in the draft are now
available and users are designing them into new applications.

* Growth of COBOL in the Unix market led X/Open to develop a Common
Application Environment (CAE) providing a portable definition of features
essential in a Unix environment but lacking in standard COBOL.  The need
for portability with non-Unix platforms has resulted in a requirement for
inclusion of these features in the international standard.

* While business-oriented features are a main-stay of COBOL, the many
services and interfaces in today's environments demand a wider variety of
data types and better interoperation of COBOL with other languages.

* Technology advances and resulting spread of computers to end users makes
it mandatory that computer systems adapt to the languages of users.  This
gives rise to a need in COBOL for support of large character sets and
cultural adaptability.

* The impact of year 2000 date handling generated a requirement for
portable year-2000 features in the draft standard, which are now being
widely implemented.

The current draft revision addresses a great many of the market
requirements for COBOL, but not all of them.  Even as the draft standard
progresses, new requirements are evolving.  With the current trend to
web-based operation, users are beginning to reconfigure existing COBOL
applications as servers integrated with web clients.  COBOL vendors are
starting to introduce language extensions to support this environment.
Thus, continued evolution of the international standard for COBOL is
essential to provide the benefits of new technologies and new environments
to COBOL users worldwide.

Fortran:  Fortran is still the language of choice for the majority of
scientific and technological programming.  There are now signs of growing
use of Fortran 90, and the recent introduction of two commercial subsets
designed for educational use is generating increased interest in Fortran
from the higher education sector.  This growth in interest means that it
is important that the development of the language can react quickly to
market requirements, while still ensuring that the safeguards of full
international review are maintained.  (See Strategies below.) 

One perceived market requirement is for a form of conditional compilation
to simplify the transfer of programs between many platforms. This is being
processed as an additional Part of the Fortran Standard, as it is not
currently intended that it should be a requirement for all
Standard-conforming compilers.  It is expected that the draft CD will be
submitted for its first approval ballot later this year.

WG5 has developed a database of requirements for future versions of
Fortran during the last five years since the publication of Fortran 90,
and this formed the basis of a year-long analysis of the features which
should be added to the base language in the next revision, informally
known as Fortran 2000. 

Internationalization:  With the proliferation of PCs and the emergence of
the world wide web, internationalization has become a very important
factor in the creation of programs and thus in programming languages.

Language Independent Projects:  The market requirement for these standards
is more indirect than explicit.  Several ISO/IEC standards make reference
to these documents and they are useful in promoting commonality and
interoperability among these standards.

LISP:  The working group has investigated several areas, e.g., modules,
internationalization, graphics, and binding facilities, and has taken into
consideration several contributions from member bodies.  None had
sufficient maturity for inclusion into the ISLISP standard published this
year.  Some of them, in particular a C language binding, should be
included in a subsequent revision. 

Modula-2:  Strong market demands from the Modula-2 community have resulted
in the development of additional parts to the standard.  There was popular
demand for Object Oriented Extensions and we anticipate that the current
development of Part 3 will lead to a uniform way of handling these
extensions in available compilers.  There was popular demand mainly from
academia for Generics which was met with Part 2.  Finally, the requirement
for interfacing to libraries defined in the C language is being handled by
the development of a Type 3 Technical Report. 

PCTE:  The PCTE market is a subset of the Repository market.  Today, PCTE
addresses well the problem of providing a standard framework upon which
complete repository products can be built.  Like in many other domains of
the software industry, the approval of a standard at the ISO level is not
sufficient to make it universally adopted.  A major condition for its
acceptance in the industry is the wide availability of implementations
compliant with this standard.  Today this criteria is only partly met; 
there are available implementations but they have not yet managed to be
the leading technology on this market.  In fact, there is still no leading
technology as large software vendors seem to still believe in proprietary
solutions in this domain and compete against each other without adhering
to standards.
 
The repository market is relatively small.  There is the same ratio
between the market of databases in general and the market of repositories,
as between the market of end user applications and the market of software
development tools.  The relatively small size of this market makes the
adoption of PCTE technology grow slowly. Nevertheless, despite this
aspect, the need for repositories is now fully recognized and most
software development organizations are now convinced that they need a
repository.  PCTE based repository products are currently used at more
than 100 different sites in Europe, America and Asia (principally Japan). 

POSIX:  Conformance to POSIX standards is taken for granted by a wide
variety of private and public sector users for "UNIX" systems procurement.
All major implementations of "UNIX" claim conformance to the POSIX
standards.

Prolog:  The only market requirement beyond the base standard identified
by the Prolog user community is the definition of a module facility.  This
is being developed as Part 2 of the standard.

VDM-SL:  The increase in the need for safety-critical systems will imply
increased interest in formal languages.  Regarding VDM-SL in particular,
requirements have been identified for some sort of modularization and for
addition of an object oriented structure to the language.  In the latter
area, a European group is working in this area and incorporation of this
work may expedite the production of Part 2 of the standard.

Z Notation:  The increasing interest in safety-critical systems and in
secure systems suggests a continuing interest in the use of Z notation.
Industrial users of the Z notation continue to exert pressure for a
standard and are contributing participants to the development work.

2.2 ACHIEVEMENTS
 
* Ada:  DIS ballots completed on two additional Ada packages; 

* APL:  Circulation of DIS 13751 ballot on Extended APL; 

* C:  CD Registration of the revision to IS 9899 on C; 

* C++:  Completion of the Final CD 14882 ballot on C++; 

* COBOL:  CD Registration and completion of the first CD ballot on the
revision to IS 1989 on COBOL; 

* Extended BNF:  Publication of IS 14977 on Syntactic Metalanguage -
Extended BNF; 

* Fortran:  The latest revision of the Fortran standard has been approved
and is being published;

* Internationalization:  TR 11017 on the Framework for
Internationalization has been forwarded for publication;

* Internationalization:  The first CD 14651 on International String
Ordering has been completed; 

* Internationalization:  Concurrent Registration and CD 14652 ballot
circulated for Specification of Cultural Conventions;

* Internationalization:  Completion of DTR 10176 ballot adding
internationalization issues to the TR on Guidelines for the Preparation of
Programming Language Standards;

* LISP:  Publication of IS 13816 on ISLISP; 

* Modula-2:  Parts 2 and 3 of the Modula-2 standard, IS 10514, progressed
to the DIS stage;

* PCTE:  Amendments for object-oriented extensions and fine grain objects
for all three parts of IS 13719 on PCTE have been forwarded for
publication;

* POSIX:  Registration of amendments to POSIX Part 1, IS 9945-1, for
realtime extensions;

* POSIX:  DIS 15068-2 on POSIX Software Administration approved; 

* POSIX:  Final CD ballot circulated for revision of IS 13210 on
Requirements and Guidelines for Test Methods Specifications and Test
Method Implementations for Measuring Conformance to POSIX Standards;

* Prolog:  CD Ballot completed on Part 2 of IS 13211 on Prolog. 

2.3 RESOURCES
  
It is increasingly difficult for standards participants to obtain the
necessary funding for standards development activities.  Nonetheless, all
currently active SC22 projects continue to have sufficient support.

3.0 FOCUS NEXT WORK PERIOD

3.1 DELIVERABLES: 
  
* Ada:  Final approval of DIS 13813 and DIS 13814 on Ada packages; 

* APL:  Completion of DIS 13751 ballot on Extended APL; 

* APL:  Circulation of PDAM Registration ballots on Character Repertoire
amendments to IS 8485 on APL and DIS 13751 on Extended APL;

* C:  Circulation of a CD ballot on the revision to IS 9899 on C; 

* C++:  Circulation of FDIS 14882 on C++; 

* Fortran:  Completion of work on the Fortran Type 2 Technical Reports; 

* Fortran:  CD ballot on revision to IS 1539-2, Fortran Part 2, Varying
Length Character String Module;

* Fortran:  CD ballot on Fortran Part 3, Conditional Compilation in
Fortran;

* Internationalization:  Circulation of Final CD 14651 ballot on
International String Ordering;

* Internationalization:  Registration and completion of first CD 14652
ballot on Specification of Cultural Conventions;

* Internationalization:  TR 10176 ballot on a revision to Guidelines for
the Preparation of Programming Language Standards, adding
internationalization issues to the TR;

* Language Independent:  Progression of Part 2 of IS 10967 on Language
Independent Arithmetic: Elementary Numerical Functions to the DIS level;

* Language Independent:  Circulation of a PDTR ballot on Guidelines for
Language Independent Service Specifications;

* Modula-2:  Approval and publication of Part 2 and Part 3 of IS 10514 on
Modula-2;

* M[UMPS]:  Initiation of a fast-track ballot (submitted by the US
National Body) for revision of IS 11756 on M[UMPS];

* PCTE:  Completion of work on all four parts of IS 13719 on PCTE,
including production of a new edition incorporating all amendments and
corrections;

* POSIX:  Completion of PDAM ballot on amendments to POSIX Part 1, IS
9945-1, for extensions to the base and for realtime extensions; 

* POSIX:  Circulation of DAM ballot on amendment to POSIX Part 1, IS
9945-1, for Protocol Independent Interfaces;

* POSIX:  Completion of PDAM ballot on additional utilities for IS 9945-2,
Shell and Utilities for POSIX;

* POSIX:  Circulation of DIS ballot on Part 3 to IS 15068, POSIX System
Administration: User & Group Account Management; 

* POSIX:  Circulation of FCD ballot on Part 4 to IS 15068 POSIX System
Administration: Printing Interfaces;

* POSIX:  Circulation of FDIS ballot for revision of IS 13210 on
Requirements and Guidelines for Test Methods Specifications and Test
Method Implementations for Measuring Conformance to POSIX Standards;

* POSIX:  Circulation of PDAM 1 to IS 14515-1 on Realtime Extensions to
the POSIX System Interface Test Methods;

* POSIX:  Circulation of PDISP ballot on POSIX Supercomputing Applications
Environment Profile;

* POSIX:  Circulation of PDISP ballot on POSIX Real Time Application
Support Profile;

* Prolog:  Circulation of Final CD Ballot on Part 2 of IS 13211 on Prolog; 

* Z Notation:  Circulation of a CD 13568 ballot on Z Notation. 
     
3.2 STRATEGIES: 
 
An important SC22 strategy is to use a variety of development methods in
order to produce timely standards and make the most efficient use of
standards development resources.  SC22 has used the following methods: 

* Assignment of development responsibility to a National Body with a
strong development committee, with a requirement for appropriate
synchronization of the international and national comment processes so
that all comments are appropriately considered in the production of the
standard;

* Joint or co-located meetings of SC22 WGs with NB or liaison organization
development committees working in the same area, to produce standards with
identical text;

* Invitation to NB or liaison organizations to fast-track documents in the
area of SC22 responsibility;

* Development within traditional working groups. 

The SC22 Working Group on Fortran is implementing a strategy allowing it
to react effectively to new requirements without causing unacceptable
delay to the processing of the main Standard.  Certain high priority new
features which were too late to be included in the last revision are being
processed as Type 2 Technical Reports, with a guarantee that the feature
will be incorporated unaltered in the next revision of the base Standard
unless experience in implementation or use shows that a modification is
necessary.  The intent of this procedure is to encourage implementors to
add these features to their compilers without waiting for the next
revision of the main language Standard.  Two such TRs are about to be
submitted for their final DTR approval ballots, while a third is currently
in the process of being balloted for PDTR approval. 

  3.2.1 RISKS
 
The risks associated with all the above methods are: 

* Continuing commitment of participants and their sponsors throughout the
development process, especially in a time of organizational downsizing. 
SC22 views this as a consequence of a lack of recognition of the value of
international standards production and participation; 

* Continuing commitment of sufficient National Bodies where the
development work is done within WGs.  This risk is significantly reduced
when development is done outside a WG; 

* Dependence on other organizations for technical expertise, development
work, and project editing when development is done outside a WG; 

* Obtaining consensus when conflicting implementations have been produced
prior to the development of the standard. 

In addition, we share a risk with other elements of JTC1 that purchasing
patterns of customers are reducing the requirement for conformance to
relevant international standards as a criteria for selection.  This
appears to be true in both the private and public sectors.  Decreased
perception of relevance by customers can result in decreased participation
in the standards process by users which, in turn, further increases the
risk of diverging from real market requirements. 

  3.2.2 OPPORTUNITIES
 
Content:  Three market factors are particularly relevant to the future
direction of SC22's work program:

1. The evolution of the marketplace from a national basis to one where
software can be developed anywhere in the world for use globally; 

2. The development of a viable application environment for network-based
computing; 

3. Our potential ability to provide higher quality, more easily applied
standards based upon our cumulative experience. 

Process:  Extensive use of electronic distribution techniques provides an
opportunity to speed up the development process and reduce the requirement
for as many meetings that add considerable expense to standards
development participation. 

3.3 WORK PROGRAM PRIORITIES
  
1. Support the current, massive, global investment in software
applications by maintenance and improvement of standardized programming
languages; 

2. Respond to emerging technological opportunities such as network
applications and global development practices; 

3. Continuously improve programming environment standardization through
the documentation and application of forty years of lessons learned in the
specification of these standards. 

_____________________ end of SC22 N2568 __________________________