You are not signed in. Sign in.

List Books: Buy books on ListBooks.org

Simply Scheme: Introducing Computer Science » (2nd Edition)

Book cover image of Simply Scheme: Introducing Computer Science by Brian Harvey

Authors: Brian Harvey, Matthew Wright, Matthew Wright
ISBN-13: 9780262082815, ISBN-10: 0262082810
Format: Hardcover
Publisher: MIT Press
Date Published: August 1999
Edition: 2nd Edition

Find Best Prices for This Book »

Author Biography: Brian Harvey

Book Synopsis

This lively introduction to computer science and computer programming in Scheme is for non-computer science majors with a strong interest in the subject and for computer science majors who lack prior programming experience. The text allows the student to experience the computer as a tool for expressing ideas, not as a frustrating set of mathematical obstacles. This goal is supported by the use of Scheme, a modern dialect of Lisp, designed to emphasize symbolic programming.

Library Journal

Should programming be a matter of learning where to put the semicolon and goto? According to Harvey and Wright, absolutely not. Programming, especially when you're starting off, is about the big picture, learning how to use your imagination and not your grammar. The authors use Scheme, a dialect of Lisp, as their base. Scheme and Lisp are symbolic programs that let you create programs that will write programs. Exercises throughout with Scheme help you get up to speed quickly and even have a good time. The first half of the book makes you comfortable with functions, leading you to projects involving bridge games and tic-tac-toe. In the second half, you deal with recursion, abstraction, files, and vectors. By the end of these chapters, you're ready to use Scheme to tackle databases and spreadsheets. Simply Scheme proves that programming can be accessible as long as it stimulates, rather than deadens, the imagination. This book will give you a sense of the inner workings of computer applications like no other.

Table of Contents

Foreword
Preface
To the Instructor
Acknowledgments
IIntroduction: Functions2
1Showing Off Scheme5
2Functions17
IIComposition of Functions26
3Expressions29
4Defining Your Own Procedures41
5Words and Sentences57
6True and False71
7Variables89
IIIFunctions as Data100
8Higher-Order Functions103
9Lambda127
Project: Scoring Bridge Hands141
10Example: Tic-Tac-Toe147
IVRecursion170
11Introduction to Recursion173
12The Leap of Faith189
13How Recursion Works207
14Common Patterns in Recursive Procedures217
Project: Spelling Names of Huge Numbers233
15Advanced Recursion235
Project: Scoring Poker Hands245
16Example: Pattern Matcher249
VAbstraction278
17Lists281
18Trees305
19Implementing Higher-Order Functions327
VISequential Programming340
20Input and Output343
21Example: The Functions Program367
22Files387
23Vectors405
24Example: A Spreadsheet Program425
25Implementing the Spreadsheet Program439
Project: A Database Program477
VIIConclusion: Computer Science498
26What's Next?501
App. ARunning Scheme507
App. BCommon Lisp515
App. CScheme Initialization File525
App. DGNU General Public License547
Credits551
Alphabetical Table of Scheme Primitives553
Glossary557
Index of Defined Procedures567
General Index573

Subjects


 

 

« Previous Book Bioconductor Case Studies
Next Book » Dive Into Python 3