0

Programming in Scheme

Mit 2 Disketten

Erschienen am 25.04.1996
Bibliografische Daten
ISBN/EAN: 9780387946818
Sprache: Englisch
Umfang: xi, 238 S., 34 s/w Illustr., 238 p. 34 illus. With
Format (T/L/B): 1.4 x 23.3 x 17.8 cm
Einband: kartoniertes Buch

Beschreibung

Scheme provides a flexible and powerful language for programming embodying many of the best features of logical and functional programming. This enjoyable book provides readers with an introduction to programming in Scheme by constructing a series of interesting and re-usable programs. The book includes two diskettes containing MIT Scheme to run on Windows PCs.

Autorenportrait

InhaltsangabeContents: Introduction.- Tutorial Introduction to Scheme.- Designing for Reuse.- Writing Portable Scheme Code.- An Iterative Approach to Analysis, Design, and Implementation.- Neural Network Library.- Complex Data Structures.- Chess Playing Program.- Go Playing Program.- Appendix A: Installing and Running the MIT Scheme Systems.- Appendix B: More Information on the Internet.

Inhalt

Inhaltsangabe1 Introduction.- 2 Tutorial Introduction to Scheme.- 2.1 Lists.- 2.1.1 Evaluating expressions.- 2.1.2 List data structures.- 2.1.3 Built-in functions for lists.- 2.2 Vectors.- 2.3 Logical tests.- 2.3.1 Testing for equality.- 2.3.2 Arithmetic tests.- 2.3.3 Conditional tests.- 2.4 Defining local variables.- 2.5 Defining functions.- 2.5.1 Recursion.- 2.6 Miscellaneous Scheme utility functions.- 3 Designing for Reuse.- 3.1 Modularity.- 3.2 Cohesion in function libraries.- 3.3 Loose coupling between library modules.- 3.4 Example: a library for genetic algorithms.- 3.4.1 Requirements.- 3.4.2 The design process.- 3.4.3 An implementation.- 3.5 Example application: allocating resources for sales and marketing.- 3.5.1 Problem description.- 3.5.2 Method for allocating resources.- 3.5.3 Program for allocating resources.- 4 Writing Portable Scheme Code.- 4.1 Designing for portability.- 4.2 Isolating operating system and graphics code.- 4.3 A portable graphics library.- 4.4 Example library for displaying graph structures.- 4.5 Example: plotting Mandelbrot sets.- 4.6 Example: plotting chaotic population growth.- 5 An Iterative Approach to Analysis, Design, and Implementation.- 5.1 Preliminary analysis, design, and implementation of a network search program.- 5.2 Evaluation of the first implementation of the network search program.- 5.3 Improving our analysis, design, and implementation.- 6 Neural Network Library.- 6.1 Requirements for a neural network library.- 6.2 Design of a neural network library.- 6.2.1 Designing a separate library for two-dimensional arrays.- 6.2.2 Algorithm for supervised learning in neural networks.- 6.3 Implementation of a neural network library.- 6.3.1 Two-dimensional array library.- 6.3.2 Neural network library.- 6.4 Example application: character recognition.- 7 Complex Data Structures.- 7.1 Using Scheme effectively to prototype and test complex data structures.- 7.2 Example application: natural language processing.- 7.2.1 Analysis.- 7.2.2 Design.- 7.2.3 Implementation.- 8 Chess Playing Program.- 8.1 Analysis.- 8.2 Design.- 8.3 Implementation.- 9 Go Playing Program.- 9.1 Requirements and analysis.- 9.1.1 The rules of Go.- 9.1.2 Data structures for maintaining information required to play Go.- 9.2 Module architecture.- 9.3 Interactively prototyping data structures.- 9.4 Low level Scheme functions to manipulate Go data structures.- 9.5 Go program design.- 9.6 Go program implementation.- 9.7 Ideas for improving the Go playing program.- Appendix A Installing and Running the MIT Scheme System.- Appendix B More Information Available on the Internet.