内容简介
For use as a core text supplement in any course covering common LISP such as Artificial Intelligence or Concepts of Programming Languages. Teaching students new and more powerful ways of thinking about programs, this text contains a tutorial-full of examples-that explains all the essential concepts of Lisp programming, plus an up- to-date summary of ANSI Common Lisp, listing every operator in the language. Informative and fun, it gives students everything they need to start writing programs in Lisp both efficiently and effectively, and highlights such innovative Lisp features as automatic memory management, manifest typing, closures, and more.
目录
Preface
Audience
How to Use This Book
The Code
On Lisp
Acknowledgements
1 Introduction
1.1 New Tools
1.2 New Techniques
1.3 A New Approach
2 Welcome to Lisp
2.1 Form
2.2 Evaluation
2.3 Data
2.4 List Operations
2.5 Truth
2.6 Functions
2.7 Recursion
2.8 Reading Lisp
2.9 Input and Output
2.10 Variables
2.11 Assignment
2.12 Functional Programming
2.13 Iteration
2.14 Functions as Objects
2.15 Types
2.16 Looking Forward
Summary
Exercises
3 Lists
3.1 Conses
3.2 Equality
3.3 Why Lisp Has No Pointers
3.4 Building Lists
3.5 Example: Compression
3.6 Access
3.7 Mapping Functions
3.8 Trees
3.9 Understanding Recursion
3.10 Sets
3.11 Sequences
3.12 Stacks
3.13 Dotted Lists
3.14 Assoc-lists
3.15 Example: Shortest Path
3.16 Garbage
4 Specialized Data Structures
4.1 Arrays
4.2 Example: Binary Search
4.3 Strings and Characters
4.4 Sequences
4.5 Example: Parsing Dates
4.6 Structures
4.7 Example: Binary Search Trees
4.8 Hash Tables
5 Control
5.1 Blocks
5.2 Context
5.3 Conditionals
5.4 Iteration
5.5 Multiple Values
5.6 Aborts
5.7 Example: Date Arithmetic
6 Functions
6.1 Global Functions
6.2 Local Functions
6.3 Parameter Lists
6.4 Example: Utilities
6.5 Closures
6.6 Example: Function Builders
6.7 Dynamic Scope
6.8 Compilation
6.9 Using Recursion
7 Input and Output
7.1 Streams
7.2 Input
7.3 Output
7.4 Example: String Substitution
7.5 Macro Characters
8 Symbols
8.1 Symbol Names
8.2 Property Lists
8.3 Symbols Are Big
8.4 Creating Symbols
8.5 Multiple Packages
8.6 Keywords
8.7 Symbols and Variables
8.8 Example: Random Text
9 Numbers
9.1 Types
9.2 Conversion and Extraction
9.3 Comparison
9.4 Arithmetic
9.5 Exponentiation
9.6 Trigonometric Functions
9.7 Representation
9.8 Example: Ray-Tracing
10 Macros
10.1 Eval
10.2 Macros
10.3 Backquote
10.4 Example: Quicksort
10.5 Macro Design
10.6 Generalized Reference
10.7 Example: Macro Utilities
10.8 On Lisp
11 CLOS
11.1 Object-Oriented Programming
11.2 Classes and Instances
11.3 Slot Properties
11.4 Superclasses
11.5 Precedence
11.6 Generic Functions
11.7 Auxiliary Methods
11.8 Method Combination
11.9 Encapsulation
11.10 Two Models
12 Structure
12.1 Shared Structure
12.2 Modification
12.3 Example: Queues
12.4 Destructive Functions
12.5 Example: Binary Search Trees
12.6 Example: Doubly-Linked Lists
12.7 Circular Structure
12.8 Constant Structure
13 Speed
13.1 The Bottleneck Rule
13.2 Compilation
13.3 Type Declarations
13.4 Garbage Avoidance
13.5 Example: Pools
13.6 Fast Operators
13.7 Two-Phase Development
14 Advanced Topics
14.1 Type Specifiers
14.2 Binary Streams
14.3 Read-Macros
14.4 Packages
14.5 The Loop Facility
14.6 Conditions
15 Example: Inference
15.1 The Aim
15.2 Matching
15.3 Answering Queries
15.4 Analysis
16 Example: Generating HTML
16.1 HTML
16.2 HTML Utilities
16.3 An Iteration Utility
16.4 Generating Pages
17 Example: Objects
17.1 Inheritance
17.2 Multiple Inheritance
17.3 Defining Objects
17.4 Functional Syntax
17.5 Defining Methods
17.6 Instances
17.7 New Implementation
17.8 Analysis
A: Debugging
B: Lisp in Lisp
C: Changes to Common Lisp
D: Language Reference
Notes
Index
1. 本站分享的所有书籍均来源于自互联网,我们只进行收集整理,并不对书籍内容进行更改。
2. 部分书籍中可能有书籍压制者放置的广告,这并不是本站所为,请注意甄别。
3. 我们分享这些书籍,纯粹是出于知识分享的热情,以及对互联网分享精神的高度认同和践行,不以盈利为目的。
4. 本站分享的所有书籍,仅供个人学习研究使用,请勿用于任何商业用途,否则产生的一切法律纠纷与本站无关。
5. 如果这些书籍让你有所收获,在条件允许的情况下,请一定购买正版书籍,这是对创作者最好的支持。
6. 如果您是此书籍的版权所有者,且您不希望此作品出现在本站,请联系我们,我们将在收到您的请求后48小时内予以删除。
📖 支持知识自由流动
每一本书的稳定访问,都离不开服务器、存储与带宽的长期维护。






