IEEE 1178-1990 en Standard for the Scheme Programming Language (IEEE Computer Society Document)《程序设计语言方案》.pdf
《IEEE 1178-1990 en Standard for the Scheme Programming Language (IEEE Computer Society Document)《程序设计语言方案》.pdf》由会员分享,可在线阅读,更多相关《IEEE 1178-1990 en Standard for the Scheme Programming Language (IEEE Computer Society Document)《程序设计语言方案》.pdf(81页珍藏版)》请在麦多课文档分享上搜索。
1、Copyright 1998 IEEE All Rights Reserved 1IEEE Std 1178-1990 (R2008)IEEE Standard for the Scheme Programming LanguageSponsorMicroprocessor and Microcomputer Standards Subcommitteeof theIEEE Computer SocietyApproved December 10, 1990Reaffirmed 27 March 2008IEEE Standards BoardAbstract: The form and me
2、aning 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 bythem, are specified. The fundamental ideas of the language and the notational conventions used fordescribing and w
3、riting 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 languagesdata manipulation and input/output primitives, are described, and a formal syntax for Scheme written inextend
4、ed Backus-Naur form is provided. A formal denotational semantics for Schemes and some issues inthe implementation of Schemes arithmetic are covered in the appendixes.Keywords: Lisp, Scheme, Scheme programming languageThe Institute of Electrical and Electronics Engineers, Inc.345 East 47th Street, Ne
5、w 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 AmericaLibrary of Congress Cataloging in Publication Data will be found in the following page.No part of this publication may be reproduc
6、ed in any form, in an electronic retrieval system or otherwise, withoutprior written permission of the publisher.iiIEEE Standards documents are developed within the Technical Committees of the IEEE Societies and the StandardsCoordinating Committees of the IEEE Standards Board. Members of the committ
7、ees serve voluntarily and withoutcompensation. They are not necessarily members of the Institute. The standards developed within IEEE represent aconsensus of the broad expertise on the subject within the Institute as well as those activities outside of IEEE whichhave expressed an interest in partici
8、pating 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 otherways to produce, test, measure, purchase, market, or provide other goods and services related to the scope of the IEEEStandard. Furthermore,
9、the viewpoint expressed at the time a standard is approved and issued is subject to changebrought about through developments in the state of the art and comments received from users of the standard. EveryIEEE Standard is subjected to review at least every five years for revision or reaffirmation. Wh
10、en a document is morethan five years old, and has not been reaffirmed, it is reasonable to conclude that its contents, although still of somevalue, do not wholly reflect the present state of the art. Users are cautioned to check to determine that they have thelatest edition of any IEEE Standard.Comm
11、ents for revision of IEEE Standards are welcome from any interested party, regardless of membership affiliationwith IEEE. Suggestions for changes in documents should be in the form of a proposed change of text, together withappropriate supporting comments.Interpretations: Occasionally questions may
12、arise regarding the meaning of portions of standards as they relate tospecific applications. When the need for interpretations is brought to the attention of IEEE, the Institute will initiateaction to prepare appropriate responses. Since IEEE Standards represent a consensus of all concerned interest
13、s, it isimportant to ensure that any interpretation has also received the concurrence of a balance of interests. For this reasonIEEE and the members of its technical committees are not able to provide an instant response to interpretation requestsexcept in those cases where the matter has previously
14、 received formal consideration.Comments on standards and requests for interpretations should be addressed to:Secretary, IEEE Standards Board445 Hoes LaneP.O. Box 1331Piscataway, NJ 08555-1331USAISBN 1-55937-125-0IEEE Standards documents are adopted by the Institute of Electrical and Electronics Engi
15、neers without regard towhether their adoption may involve patents on articles, materials, or processes. Such adoption does not assumeany liability to any patent owner, nor does it assume any obligation whatever to l parties adopting the standardsdocuments.iiiForeword(This Foreword is not a part of I
16、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 weaknessesand restrictions that make additional features appear necessary. The Scheme programming language demonstrates thata ve
17、ry small number of rules for forming expressions, with few restrictions on how they are composed, suffice to forma practical and efficient programming language that is flexible enough to support most of the major programmingparadigms in use today.Scheme places few restrictions on the use of procedur
18、al abstractions: procedures are full first-class objects. AlthoughScheme is a block-structured language, and it permits side effects, it differs from most imperative block-structuredlanguages by encouraging a functional style of programming that uses procedures to encapsulate state.In a similar spir
19、it, Scheme implementations impose no storage penalty for tail-recursive procedure calls, andcontinuations (which are present, although behind the scenes, in all programming languages) are first-lass Schemeobjects that act like procedures. This permits nearly all known sequential control structures t
20、o be expressed in terms ofprocedure calls.Purpose of This StandardThroughout its thirty-year life, the Lisp family of languages has continually evolved to encompass changing ideasabout programming-language design. Scheme has participated in the evolution of Lisp. Scheme was one of the firstprogrammi
21、ng languages to incorporate first-lass procedures as in the lambda calculus, thereby proving the usefulnessof static scope rules and block structure in a dynamically typed language. Scheme was the first major dialect of Lispto distinguish procedures from lambda expressions and symbols, to use a sing
22、le 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 firstwidely used programming language to rely entirely on procedure calls to express iteration and to embrace first-classescape procedures.Specify
23、ing a standard for Scheme is intended to encourage the continued evolution of Lisp dialects by identifying acoherent set of constructs that is large enough to support the implementation of substantial programs, but also smallenough to admit significant extensions and alternate approaches to language
24、 design. For example, this standard doesnot mandate the inclusion in Scheme of large run-time libraries, particular user interfaces, or complex interactions withexternal operating systems, although practical Scheme implementations ordinarily provide such features.In particular, there are important l
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IEEE11781990ENSTANDARDFORTHESCHEMEPROGRAMMINGLANGUAGEIEEECOMPUTERSOCIETYDOCUMENT 程序设计语言 方案 PDF

链接地址:http://www.mydoc123.com/p-1248068.html