IEEE-1178-1990-R2008.pdf
《IEEE-1178-1990-R2008.pdf》由会员分享,可在线阅读,更多相关《IEEE-1178-1990-R2008.pdf(81页珍藏版)》请在三一文库上搜索。
1、Copyright 1998 IEEE All Rights Reserved1 IEEE Std 1178-1990 (R2008) IEEE Standard for the Scheme Programming Language Sponsor Microprocessor and Microcomputer Standards Subcommittee of the IEEE Computer Society Approved December 10, 1990 Reaffirmed 27 March 2008 IEEE Standards Board Abstract: The fo
2、rm and meaning of programs written in the Scheme programming language in particular, their syntax, the semantic rules for interpreting them, and the representation of data to be input or output by them, are specified. The fundamental ideas of the language and the notational conventions used for desc
3、ribing and writing programs in the language are presented. The syntax and semantics of expressions, programs, and definitions are specified. Schemes built-in procedures, which include all of the languages data manipulation and input/output primitives, are described, and a formal syntax for Scheme wr
4、itten in extended Backus-Naur form is provided. A formal denotational semantics for Schemes and some issues in the implementation of Schemes arithmetic are covered in the appendixes. Keywords: Lisp, Scheme, Scheme programming language The Institute of Electrical and Electronics Engineers, Inc. 345 E
5、ast 47th Street, New York, NY 10017-2394, USA 1991 by the Institute of Electrical and Electronics Engineers, Inc. All rights reserved. Published 1991. Printed in the United States of America Library of Congress Cataloging in Publication Data will be found in the following page. No part of this publi
6、cation may be reproduced in any form, in an electronic retrieval system or otherwise, without prior written permission of the publisher. Copyright The Institute of Electrical and Electronics Engineers, Inc. Provided by IHS under license with IEEELicensee=IHS Employees/1111111001, User=Japan, IHS Not
7、 for Resale, 07/30/2008 03:53:20 MDTNo reproduction or networking permitted without license from IHS -,-,- ii IEEE Standards documents are developed within the Technical Committees of the IEEE Societies and the Standards Coordinating Committees of the IEEE Standards Board. Members of the committees
8、serve voluntarily and without compensation. They are not necessarily members of the Institute. The standards developed within IEEE represent a consensus of the broad expertise on the subject within the Institute as well as those activities outside of IEEE which have expressed an interest in particip
9、ating in the development of the standard. Use of an IEEE Standard is wholly voluntary. The existence of an IEEE Standard does not imply that there are no other ways to produce, test, measure, purchase, market, or provide other goods and services related to the scope of the IEEE Standard. Furthermore
10、, the viewpoint expressed at the time a standard is approved and issued is subject to change brought about through developments in the state of the art and comments received from users of the standard. Every IEEE Standard is subjected to review at least every five years for revision or reaffirmation
11、. When a document is more than five years old, and has not been reaffirmed, it is reasonable to conclude that its contents, although still of some value, do not wholly reflect the present state of the art. Users are cautioned to check to determine that they have the latest edition of any IEEE Standa
12、rd. Comments for revision of IEEE Standards are welcome from any interested party, regardless of membership affiliation with IEEE. Suggestions for changes in documents should be in the form of a proposed change of text, together with appropriate supporting comments. Interpretations: Occasionally que
13、stions may arise regarding the meaning of portions of standards as they relate to specific applications. When the need for interpretations is brought to the attention of IEEE, the Institute will initiate action to prepare appropriate responses. Since IEEE Standards represent a consensus of all conce
14、rned interests, it is important to ensure that any interpretation has also received the concurrence of a balance of interests. For this reason IEEE and the members of its technical committees are not able to provide an instant response to interpretation requests except in those cases where the matte
15、r has previously received formal consideration. Comments on standards and requests for interpretations should be addressed to: Secretary, IEEE Standards Board 445 Hoes Lane P.O. Box 1331 Piscataway, NJ 08555-1331 USA ISBN 1-55937-125-0 IEEE Standards documents are adopted by the Institute of Electri
16、cal and Electronics Engineers without regard to whether their adoption may involve patents on articles, materials, or processes. Such adoption does not assume any liability to any patent owner, nor does it assume any obligation whatever to l parties adopting the standards documents. Copyright The In
17、stitute of Electrical and Electronics Engineers, Inc. Provided by IHS under license with IEEELicensee=IHS Employees/1111111001, User=Japan, IHS Not for Resale, 07/30/2008 03:53:20 MDTNo reproduction or networking permitted without license from IHS -,-,- iii Foreword (This Foreword is not a part of I
18、EEE Std 1178-1990, IEEE Standard for the Scheme Programming Language.) Programming languages should be designed not by piling feature on top of feature, but by removing the weaknesses and restrictions that make additional features appear necessary. The Scheme programming language demonstrates that a
19、 very small number of rules for forming expressions, with few restrictions on how they are composed, suffice to form a practical and efficient programming language that is flexible enough to support most of the major programming paradigms in use today. Scheme places few restrictions on the use of pr
20、ocedural abstractions: procedures are full first-class objects. Although Scheme is a block-structured language, and it permits side effects, it differs from most imperative block-structured languages by encouraging a functional style of programming that uses procedures to encapsulate state. In a sim
21、ilar spirit, Scheme implementations impose no storage penalty for tail-recursive procedure calls, and continuations (which are present, although behind the scenes, in all programming languages) are first-lass Scheme objects that act like procedures. This permits nearly all known sequential control s
22、tructures to be expressed in terms of procedure calls. Purpose of This Standard Throughout its thirty-year life, the Lisp family of languages has continually evolved to encompass changing ideas about programming-language design. Scheme has participated in the evolution of Lisp. Scheme was one of the
23、 first programming languages to incorporate first-lass procedures as in the lambda calculus, thereby proving the usefulness of static scope rules and block structure in a dynamically typed language. Scheme was the first major dialect of Lisp to distinguish procedures from lambda expressions and symb
24、ols, to use a single lexical environment for all variables, and to evaluate the operator position of a procedure call in the same way as an operand position. Scheme was the first widely used programming language to rely entirely on procedure calls to express iteration and to embrace first-class esca
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IEEE 1178 1990 R2008
链接地址:https://www.31doc.com/p-3772144.html