| ★ wanayoo — archive 1999 http://www.pythonlabs.com/pub/www.python.org/consortium/pythonapp1.html | Nouvelle recherche | Portail wanayoo |
The purposes of the Consortium are to support advancement of information technology in the field of languages, networking, graphics, user interfaces, etc., by evolving the Python Language and the JPython compiler (a compiler that allows programs written in Python to run on Java byte codes) to better utilize and improve the information infrastructure for industry and for the general public, and to encourage cooperation in the industry through the promotion and development of the computational environment known as the "Python Language and development system," and "JPython development system." The Python Language is one of the many computer languages that execute on a number of computer platforms and operating systems; and JPython allows programs written in the Python Language to work seamlessly with the Java language. Because it is easy for non-experts to read and modify the Python Language, it is particularly useful for those who build systems that wish to allow their customers or users to tailor or customize their systems to build it into their systems for this purpose. It is an excellent scripting language.
CNRI's role as Consortium Host is to provide the vendor-neutral architectural, engineering and administrative leadership required to make the Consortium work. It is planned that the Consortium begin operation on September 1, 1998, or as soon thereafter as feasible.
The Consortium is financially self-supporting through membership fees. Membership in the Consortium is open to any operating organization agreeing to the terms and conditions of this Agreement. These terms and conditions apply to membership for a period of one year after the first day of the calendar quarter in which the member joins. If the Member is itself a consortium, user society, or otherwise has members or sponsors, the rights and privileges granted under this Agreement extend only to the paid employees of the Member, not to Member's members or sponsors.
a. Categories. There are three membership categories: Full Member, Affiliate Member and Associate Member. An organization whose controlling corporation or organization, either individually or in conjunction with its sub-organizations, has gross revenues in excess of $75 million per year must join as a Full Member. Similarly, an organization whose controlling corporation or organization has gross revenues in excess of $25 million per year, but not more than $75 million per year may join as an Affiliate Member or as a Full Member. Smaller organizations may join as an Associate Member, as an Affiliate Member or as a Full Member.
b. Fees. The total membership fee for becoming a Full Member is Twenty- five Thousand ($25,000) U.S. Dollars per year, the total for becoming an Affiliate Member is Ten Thousand ($10,000) U.S. Dollars per year, and the total for Associate Member is Three Thousand ($3,000) U.S. Dollars per year. The Membership Fee is due at the time the organization joins. If the membership is renewed, the due date in each subsequent year will be the anniversary of the first day of the calendar quarter in which the Member initially joined.
c. For years subsequent to January 1, 2000, the Membership Fee may be modified by CNRI in light of the Consortium needs, but any change shall be subject to six months notification to the Member.
a. Executive Director. CNRI shall appoint and maintain a CNRI-employed Executive Director ("ED"), who acts as chief executive of the Consortium. If the ED is not also the Technical Director ("TD"), the ED will not be expected to spend any significant amount of time on the Consortium technical effort.
b. Technical Director. CNRI shall appoint and maintain a CNRI-employed Technical Director ("TD"), who acts as chief architect for all specifications and reference implementations produced by the Consortium. The initial TD is Guido van Rossum, who is the original architect of the Python Language and has been directing its development since its inception.
c. The CNRI Staff assigned by CNRI to support the activities of the Consortium will consist of the ED and the TD, as well as other CNRI technical and administrative staff. The CNRI staff shall at all times remain employees, contractors or agents of CNRI, provided, however, that, when working on Consortium activities, the staff shall report to the ED for administrative matters and to the TD for technical matters. Staff hiring for Consortium purposes is controlled by CNRI; and the level of staffing will depend upon Membership Fees received by CNRI.
d. Integration within CNRI. The Consortium is administered within CNRI, and the ED reports to the President of CNRI or his designee. The ED, TD and CNRI staff assigned to support the activities of the Consortium shall be known informally as the Python Development Team (or "PDT"). For purposes of this Agreement, an individual is considered employed by CNRI if the individual is a CNRI employee or works for any organization that is controlled by CNRI.
CNRI may collaborate with other organizations in the development of the Python Language. Aspects of the Python Language implementation may be developed by CNRI's collaborators under various cooperative arrangements that are not related to the Consortium.
Member organizations may volunteer to contribute staff on short-term assignment to CNRI for specific implementation efforts sponsored by the Consortium. To the extent feasible, CNRI will provide facility resources to accept such staff. For the portion of their time assigned to Consortium activities, Visiting Engineers will take their technical direction from the TD. Administrative matters relating to the Visiting Engineers while at CNRI will be coordinated with CNRI by the ED.
An Advisory Committee ("AC") provides strategic guidance and review of the Consortium's activities; the AC includes the ED, the TD and one representative from each Full Member, from each Affiliate Member, from each Associate Member and from CNRI. Normally, where the ED and the TD are not the same person, the ED will serve as the CNRI representative on the AC. The TD shall not serve as the CNRI AC representative.
a. Appointment of Representatives. Each Full Member, Affiliate Member, Associate Member and CNRI may appoint one AC representative.
b. Voting. Each Full Member AC representative and the AC representative of CNRI are entitled to one vote on any voting matter. Each Affiliate Member AC representative is entitled to a one-third vote on any voting matter. Each Associate Member AC representative is entitled to a one- eighth vote on any voting matter.
c. Meetings. The Advisory Committee will meet approximately twice per year. Meetings for technical working group activities are scheduled as needed. The meetings will be chaired by the ED, or if the ED is not present, the TD.
Every proposal for a new Python Language feature, specification, implementation or application that is submitted to the Consortium for consideration as part of the Consortium-sponsored Python Language and development system design process ("proposed specification" or "proposal") will go through the following process, unless an alternative process is approved by the Advisory Committee upon recommendation by the TD.
To be considered by the Consortium, a proposal must be sponsored by a Member, the Technical Director or by CNRI, and must include a proposed specification of interfaces and functionality. The proposal need not originate through the Consortium-sponsored design process. The sponsoring party should present the proposal to the Technical Director for formal consideration, and the TD shall designate an individual who will act as an Architect for the proposed specification. It is understood that proposed specifications may take various forms. Some will be submitted as fully developed proposals, while other submissions may be little more than outlines that require significant development and implementation efforts by the TD (and other members of the PDT, as required). In the event the TD anticipates that a significant effort will be required to develop a proposed specification before it is considered for trial review, and the TD believes that such an effort is advisable, the TD shall bring the matter to the AC for approval. The AC shall decide on whether to proceed with this effort by a simple majority vote.
Where the sponsoring party indicates at the time of submission of a proposal to the TD that the proposal contains proprietary and/or confidential information, or where a sponsoring party, or any other Consortium member, becomes aware of any proprietary rights, claims or interests in or to a proposed specification at any time in the course of the Python Consortium Review Process, the existence of any such rights, claims or interests shall promptly be brought to the attention of the TD. The TD shall refer the proposed specification to the ED to obtain legal review before proceeding. In the event the ED and the TD are the same individual, the TD shall refer the proposed specification to the President of CNRI or his designee for purposes of obtaining legal review. The ED (or CNRI, where appropriate) shall request clarification from the sponsoring party. Where rights, claims or interests are asserted by the sponsoring party or others, the sponsoring party must provide the ED with written assurances that licenses will be made available to the Consortium members and to the general public on reasonable, non-discriminatory terms and conditions, preferably for unrestricted use and at no charge. The ED shall bring any such assurances to the attention of the Advisory Committee for advice on whether the TD should proceed with the Review Process in a given case.
The TD then ensures that the proposal, including relevant software and associated documentation, if any, is circulated to all Advisory Committee representatives, and a trial review is begun. The purpose of the trial review is to determine if the Consortium should conduct a technical review of the proposed specification, and to allow Members and CNRI to prepare sufficient resources to conduct that technical review. The TD sets the length of the trial review period, based on the size and importance of the proposal, with a minimum of one week and a maximum of one month. At the end of the trial review, each Advisory Committee representative is asked to give the TD a Yes/No vote. A No vote, i.e., a vote not to proceed with a technical review, must be accompanied with comments to explain the vote. The TD considers the votes, and makes an informed decision as to whether to proceed with the technical review.
If the decision is to proceed, than a technical review begins. The TD sets the length of the technical review period based on the size and importance of the proposal, with a minimum of one month and a maximum of six months. An Internet posting and an electronic mailing list will be created at CNRI for discussion of the proposal; participation on this list is open to all Members and CNRI, without constraint. As issues are raised during the review, it is expected that participants will vote (formally and informally) on how to resolve the issues. The TD will consider the votes, and make an informed decision. Meetings may be called as deemed necessary by the participants or the TD.
At the end of the internal technical review period, each Advisory Committee representative will be asked to give the TD a Yes/No/Not-Yet vote. A No vote, i.e., a vote to discontinue the review and reject the specification, must be accompanied with comments to explain the vote. A Not-Yet vote indicates that the proposed specification either needs substantially more design work, or that the complexity of the proposal requires a longer review cycle. A Not-Yet vote also must be accompanied with comments to explain the vote. The TD will consider the votes, and make an informed decision as to whether to proceed to the next stage of the process, or to extend the technical review, or to dismiss the proposed specification without prejudice and ask the sponsor to resubmit after redesign, or to reject the proposed specification.
If the proposed specification is accepted, then a public review begins. The TD sets the length of the public technical review period, based on the size and importance of the proposal, with a minimum of one month and a maximum of three months. The TD will make a reasonable effort to bring the proposal to public attention, primarily by posting on the Internet on a public Python Language mailing list or news group. Any issues raised during this review must be answered by the Architect in conjunction with the review participants, in the same way as during the internal technical review, and in parallel with the public review.
When the public review has ended and the TD believes proof of concept has been established, each Advisory Committee representative is asked to give the TD a Yes/No vote. A Yes vote indicates that proof of concept has been demonstrated, and that the proposed specification should now be accepted. A No vote indicates that proof of concept has not yet been demonstrated. A No vote must be accompanied with comments to explain the vote. The TD will consider the votes, and make an informed decision as to whether to accept the proposal, or to restart the proposed specification at some earlier stage in the overall process.
Once a proposed specification has been approved, a public Python Language list will be used to discuss possible clarifications or additions to the proposed standard. The TD will appoint an Architect for such changes; this Architect may differ from the original Architect. Resolution of issues is handled in the same way as during the previous technical reviews. The TD has authority to decide on minor changes. Major changes to the specification will require the full trial/technical/ public review process, at the discretion of the TD.
Upon completion of the Python Consortium Review Process for a proposed specification, the TD will inform the AC that the review process is complete and request that the proposal be referred to the Consortium for final release authorization. The Consortium will then take a formal decision whether to commit for release of the proposed specification to Consortium members or to the general public in accordance with the Consortium's Rules of Procedure, or to request the TD to provide further review. In the event further review is requested, the Consortium will provide the TD with written comments to explain its request.
The Consortium carries out almost all communications using the Internet. Internet connectivity to CNRI should be viewed as a requirement for adequate participation in Consortium activities, including the functions of the Advisory Committee. CNRI will provide information in hard copy form only at the discretion of the ED or TD.
On behalf of the Consortium, CNRI will maintain and disseminate a collection of software and documentation relating to the Python Language, its Library, and related matters. This collection will consist of specifications approved as standards by the Consortium, implementations of approved specifications, sample applications, and other relevant software and associated documentation. The contents of this collection will be determined by the ED and TD based on the needs and desires of the members and CNRI, tempered by resource constraints. The frequency with which new releases are made will be determined by the ED and TD, with the advice of the Advisory Committee and in accordance the Consortium's Rules of Procedure.
CNRI will provide a public network path for reporting problems with, and suggesting changes to, this collection. CNRI will maintain a database of such bug reports and an archive of bug fixes, and this information will be made available over the Internet by CNRI to Consortium members. The TD in consultation with the ED will have the discretion to determine whether to make any such bug fixes available to the general public.
Subject to applicable license agreements and the Consortium's Rules of Procedure, Consortium members may incorporate software and documentation produced under the auspices of the Consortium into products or services at any time after such information or materials have been formally released to Consortium members or to the general public, as provided herein. Such information or materials are considered committed for release by the Consortium once the Consortium notifies the ED in writing that an action authorizing such release has been taken and the date of any such action. The information and/or materials will be deemed formally released by the Consortium when committed for release by the Consortium and actually made available by CNRI on the Internet.
As directed by the ED, the PDT will endeavor to collect and make available software contributed by other individuals and organizations, as well as by Consortium members, for use by the Consortium. CNRI, on behalf of the Consortium, will accept such third-party software and documentation only with appropriate representations of sufficient right, title and interest to contribute the software and documentation, but will bear no responsibility if contributed software and documentation should prove to be infringing. In addition, the PDT will not be responsible for maintaining such software. The contents and release schedule for the contributed software collection will be determined by the ED and TD.
The PDT will not attempt to acquire or maintain hardware platforms produced by every member, but will attempt to have a reasonable selection of platforms. While all hardware and software acquisitions for Consortium purposes will be at the discretion of CNRI, the ED shall inform the Advisory Committee at regularly scheduled meetings of all such acquisitions. The PDT will not be responsible for ensuring that prototype or released software operates correctly on any particular hardware or system configuration, but will attempt to ensure portability of such software to a variety of systems.
Consortium Membership Fees and other income will be used to cover direct and indirect costs of Consortium activities, including without limitation, costs of hardware and software acquired by CNRI for Consortium purposes.
There will be an annual conference, open to the public, to promote the exchange of technical information about the Python Language and development system. Workshops will also be held on various technical subjects relating to the Python Language, as deemed appropriate by the TD. Reasonable attendance fees for such activities may be imposed.