X3J13
From Wikipedia, the free encyclopedia
X3J13 is the name of a technical committee which was part of INCITS (known at the time as X3). The X3J13 committee was formed in 1986 to draw up an ANSI Common Lisp standard based on the first edition of the book Common Lisp the Language (also known as "CLtL", or "CLtL1"), which was previously a de facto standard for the language. X3J13 later worked with ISO on an internationally standardised dialect of Lisp named ISLISP.
Contents |
[edit] Organisation
The chair of the committee was Doctor Robert Mathis of Ohio State University, with Mary van Deusen as secretary.
The efforts of the committee were guided by its charter, the successful creation of which is credited to the coordinating efforts of Susan P. Ennis, a representative of Amoco Production Company[1]. The charter lays out the committee's goals and priorities, as well as a broadly-defined list of some topics to be addressed.
[edit] Subcommittees
The committee formed several subcommittees to help its members better concentrate their efforts.
[edit] Cleanup Subcommittee
The Cleanup Subcommittee, chaired by Larry Masinter, established a standardised format for the submission of proposals for voting. These issue writeups, while not themselves part of the standard, were deemed sufficiently useful for the Common Lisp HyperSpec to include and cross-reference them for the benefit of readers, providing information about the original intent of the committee in its decisions. These writeups also serve as a historical record of those alternate solutions to problems which were, ultimately, not adopted.
[edit] Compiler Subcommittee
Chaired by Sandra Loosemore, this subcommittee created proposals for issues relating to Lisp compilation. Guy Steele acknowledged in the second edition of Common Lisp the Language the large contribution of the Compiler Subcommittee towards clarifying the compilation process described in the first edition, parts of which Steele himself describes as "vague"[2].
[edit] Iteration Subcommittee
Jon L. White was the chair of the Iteration Subcommittee. Among the issues dealt with by this subcommittee was the generalized LOOP
macro — a domain-specific language to which the second edition of CLtL devoted an entire chapter. The "ALGOL-like" syntax of this macro, differing from Lisp's more usual S-expression syntax, was and remains somewhat controversial[3].
[edit] Character Subcommittee
The Character Subcommittee, chaired by Thom Linden, had the task of defining how the standard would deal with the issues surrounding different character sets. The resolution of these matters — particularly the ability to use any character in the name of a symbol — was intended to make Common Lisp simpler for international users.
[edit] Error Handling Subcommittee
Chaired by Kent Pitman, the Error Handling Subcommittee plugged what was described as "the biggest outstanding hole in Common Lisp"[2] with the condition system, a general mechanism for handling errors, warnings, and signals.
[edit] Drafting Subcommittee
Kathy Chapman was the chair for the Drafting Subcommittee, which was responsible for the drafting of the actual standard document. In addition, the subcommittee oversaw efforts to keep terminology consistent and accurate throughout the committee's activities.
[edit] Final Document
The final standard produced by the X3J13 committee was published as American National Standard X3.226, and also in hypertext form as the Common Lisp HyperSpec.
[edit] Relation to "Common Lisp the Language"
Guy L. Steele, Jr., the author of the book Common Lisp the Language on which the committee's work was based, himself served on the committee and gave them permission to use any or all parts of its first edition in their efforts. Documents published by X3J13 were later used, together with quotations from certain committee members, in the production of the second edition, which was released a short while before the publication of the committee's final standard document. The second edition bears similarity to the standard, but some changes were made between the publication of the book and the final draft of the ANSI standard. Common Lisp the Language has no official connection with X3J13 or ANSI.
[edit] See also
- Common Lisp
- ANSI
- INCITS (formerly known as X3), X3J13's parent body
- Common Lisp the Language - Guy Steele's book
- Common Lisp HyperSpec - the hypertext version of the standard
[edit] External links
[edit] References
- ^ Kent Pitman: "X3J13 Charter" (annotated), http://www.nhplace.com/kent/CL/x3j13-86-020.html
- ^ a b Guy L. Steele, Jr.: "Common Lisp the Language" (second edition), Acknowledgements. Digital Press, 1984; ISBN 0-932376-41-X
- ^ Richard P. Gabriel and Guy L. Steele, Jr.: "The Evolution of Lisp"[1], page 85. ACM SIGPLAN Notices, vol. 28, no. 3, pp. 231-270, 1993.