Who This Book Is For(本书面向的读者)
This book is for you if you’re curious about Common Lisp, regardless of whether you’re already convinced you want to use it or if you just want to know what all the fuss is about.
如果你对 Common Lisp 感兴趣,那么无论是否已经确定要使用它或者只是想一窥其门径,本书都挺适合你的。
If you’ve learned some Lisp already but have had trouble making the leap from academic exercises to real programs, this book should get you on your way. On the other hand, you don’t have to be already convinced that you want to use Lisp to get something out of this book.
如果你已经学会了一些 Lisp,但却难于跨越从学术训练到真实程序之间的鸿沟,那么本书刚好可以帮你走上正途。而另一方面,你也不必带着学以致用的目的来阅读本书。
If you’re a hard-nosed pragmatist who wants to know what advantages Common Lisp has over languages such as Perl, Python, Java, C, or C#, this book should give you some ideas. Or maybe you don’t even care about using Lisp—maybe you’re already sure Lisp isn’t really any better than other languages you know but are annoyed by some Lisper telling you that’s because you just don’t “get it.” If so, this book will give you a straight-to-the-point introduction to Common Lisp. If, after reading this book, you still think Common Lisp is no better than your current favorite languages, you’ll be in an excellent position to explain exactly why.
如果你是个顽强的实用主义者,想知道 Common Lisp 相比 Perl、Python、Java、C 和 C# 这些语言都有哪些优势,那么本书应该可以提供一些思路。或者你根本就没打算使用 Lisp——可能是因为已经确信 Lisp 并不比已知的其他语言更好,但却由于不熟悉它而无法反驳那些 Lisp 程序员。如果是这样,本书将给你一个直奔 Common Lisp 主题的介绍。如果在读完本书以后,你仍然认为 Common Lisp 比不上自己当前喜爱的其他语言,那么你也有充分理由来说明自己观点了。
I cover not only the syntax and semantics of the language but also how you can use it to write software that does useful stuff. In the first part of the book, I’ll cover the language itself, mixing in a few “practical” chapters, where I’ll show you how to write real code. Then, after I’ve covered most of the language, including several parts that other books leave for you to figure out on your own, the remainder of the book consists of nine more practical chapters where I’ll help you write several medium-sized programs that actually do things you might find useful: filter spam, parse binary files, catalog MP3s, stream MP3s over a network, and provide a Web interface for the MP3 catalog and server.
我不但介绍了该语言的语法和语义,还讲述了如何使用它来编写有用的软件。在本书的第一部分,我将谈及语言本身,同时穿插一些“实践性”章节,展示如何编写真实的代码。接着,在我阐述了该语言的绝大部分见容后——包括某些在其他书里往往留给你自己去考查的内容,将给出九个更实用的章节,帮助你编写一些中等大小的程序来做一些你可能认为有用的事:过滤垃圾邮件、解析二进制文件、分类 MP3、通过网络播放 MP3 流媒体,以及为MP3目录和服务器提供 Web 接口。
After you finish this book, you’ll be familiar with all the most important features of the language and how they fit together, you’ll have used Common Lisp to write several nontrivial programs, and you’ll be well prepared to continue exploring the language on your own. While everyone’s road to Lisp is different, I hope this book will help smooth the way for you. So, let’s begin.
读完本书后,你将熟悉该语言的所有最重要的特性以及它们是如何组织在一起的,而是你已经用 Common Lisp 写出了一些非凡的程序,并且可以凭借自身力量继续探索该语言的了。尽管每个人的 Lisp 之路都有所不同,但我还是希望本书可以帮助你少走些弯路。那么,让我们就此上路吧。