没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Structure And Interpretation Of Computer Programs 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除
资源推荐
资源详情
资源评论
1
Structure and Interpretation
of Computer Programs
second edition
Harold Abelson and Gerald Jay Sussman
with Julie Sussman
foreword by Alan J. Perlis
The MIT Press
Cambridge, Massachusetts London, England
McGraw-Hill Book Company
New York St. Louis San Francisco Montreal Toronto
2
This book is one of a series of texts written by faculty of the Electrical Engineering and Computer
Science Department at the Massachusetts Institute of Technology. It was edited and produced by
The MIT Press under a joint production-distribution arrangement with the McGraw-Hill Book
Company.
Ordering Information:
North America
Text orders should be addressed to the McGraw-Hill Book Company.
All other orders should be addressed to The MIT Press.
Outside North America
All orders should be addressed to The MIT Press or its local distributor.
© 1996 by The Massachusetts Institute of Technology
Second edition
All rights reserved. No part of this book may be reproduced in any form or by any electronic or
mechanical means (including photocopying, recording, or information storage and retrieval)
without permission in writing from the publisher.
This book was set by the authors using the LATEX typesetting system and was printed and bound
in the United States of America.
Library of Congress Cataloging-in-Publication Data
Abelson, Harold
Structure and interpretation of computer programs / Harold Abelson
and Gerald Jay Sussman, with Julie Sussman. -- 2nd ed.
p. cm. -- (Electrical engineering and computer science
series)
Includes bibliographical references and index.
ISBN 0-262-01153-0 (MIT Press hardcover)
ISBN 0-262-51087-1 (MIT Press paperback)
ISBN 0-07-000484-6 (McGraw-Hill hardcover)
1. Electronic digital computers -- Programming. 2. LISP (Computer
program language) I. Sussman, Gerald Jay. II. Sussman, Julie.
III. Title. IV. Series: MIT electrical engineering and computer
science series.
QA76.6.A255 1996
005.13'3 -- dc20 96-17756
Fourth printing, 1999
3
This book is dedicated, in respect and admiration, to the spirit that lives in the computer.
``I think that it's extraordinarily important that we in computer science keep fun in computing.
When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every
now and then, and after a while we began to take their complaints seriously. We began to feel as if
we really were responsible for the successful, error-free perfect use of these machines. I don't think
we are. I think we're responsible for stretching them, setting them off in new directions, and keeping
fun in the house. I hope the field of computer science never loses its sense of fun. Above all, I hope
we don't become missionaries. Don't feel as if you're Bible salesmen. The world has too many of
those already. What you know about computing other people will learn. Don't feel as if the key to
successful computing is only in your hands. What's in your hands, I think and hope, is intelligence:
the ability to see the machine as more than when you were first led up to it, that you can make it
more.''
Alan J. Perlis (April 1, 1922-February 7, 1990)
4
Contents
Foreword
Preface to the Second Edition
Preface to the First Edition
Acknowledgments
1 Building Abstractions with Procedures
1.1 The Elements of Programming
1.1.1 Expressions
1.1.2 Naming and the Environment
1.1.3 Evaluating Combinations
1.1.4 Compound Procedures
1.1.5 The Substitution Model for Procedure Application
1.1.6 Conditional Expressions and Predicates
1.1.7 Example: Square Roots by Newton's Method
1.1.8 Procedures as Black-Box Abstractions
1.2 Procedures and the Processes They Generate
1.2.1 Linear Recursion and Iteration
1.2.2 Tree Recursion
1.2.3 Orders of Growth
1.2.4 Exponentiation
1.2.5 Greatest Common Divisors
1.2.6 Example: Testing for Primality
1.3 Formulating Abstractions with Higher-Order Procedures
1.3.1 Procedures as Arguments
1.3.2 Constructing Procedures Using Lambda
1.3.3 Procedures as General Methods
1.3.4 Procedures as Returned Values
2 Building Abstractions with Data
2.1 Introduction to Data Abstraction
2.1.1 Example: Arithmetic Operations for Rational Numbers
2.1.2 Abstraction Barriers
2.1.3 What Is Meant by Data?
2.1.4 Extended Exercise: Interval Arithmetic
2.2 Hierarchical Data and the Closure Property
2.2.1 Representing Sequences
2.2.2 Hierarchical Structures
2.2.3 Sequences as Conventional Interfaces
2.2.4 Example: A Picture Language
2.3 Symbolic Data
2.3.1 Quotation
2.3.2 Example: Symbolic Differentiation
2.3.3 Example: Representing Sets
5
剩余531页未读,继续阅读
资源评论
yinkaisheng-nj
- 粉丝: 762
- 资源: 6231
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 仓库管理系统 基于Spring Boot框架实现的仓库管理系统(程序+数据库+报告)
- An Efficient Representation for Irradiance Environment Maps
- grafana的服务器监控模板
- OneForAll子域收集工具
- KUKA机器人MxAutomation功能资料
- PHP免登录购买商城源码/抖音商城系统/主播带货手机商城/支持分站/对接易支付
- 全新完整版H5商城系统源码 亲测 附教程
- 2021年全球疾病负担研究(GBD)生育率估计.zip
- 基于曼宁公式求解复式断面水位-流量关系曲线(MATLAB全代码)
- 前端常用布局模板39套,纯CSS实现布局
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功