0

The Art of Lisp Programming

Erschienen am 20.12.1989, Auflage: 1/1990
53,49 €
(inkl. MwSt.)

Lieferbar innerhalb 1 - 2 Wochen

In den Warenkorb
Bibliografische Daten
ISBN/EAN: 9783540195689
Sprache: Englisch
Umfang: XIV, 169 S., 20 s/w Illustr., 169 p. 20 illus.
Einband: kartoniertes Buch

Beschreibung

Many of us already have at least a passing acquaintance with procedural languages such as BASIC or Pascal, but may not have met a functional language like Lisp before. Using the same enjoyable and sometimes quirky style that they employed so successfully in "The Art of C-Programming", Robin Jones and his team explain the fundamentals of Lisp in a way that students from school to postgraduates will find lucid and stimulating. The book is unique in illustrating the use of Lisp through the development of a realistic project: the design and implementation of a Lisp-based interpreter for the language ABC.

Inhalt

Inhaltsangabe1 Some Basic Ideas.- Lists.- Representing Lists.- The Interpreter.- Functions.- Two More Primitives.- Constants and Variables.- S-Expressions.- Postscript.- Exercises 1.- Answers.- 2 List Functions.- Splitting Lists.- car and cdr.- Setting Up Lists.- setq.- A Piece of Pedantry.- Head and Tail Revisited.- cons.- Postscript.- Exercises 2.- Answers.- 3 Predicates.- cond.- Boolean Functions.- Exercises 3.- Answers.- 4 Recursion.- Powers.- Boolean Functions Revisited.- eq.- Meanwhile Back at the Problem.- null.- AND and OR.- flat.- first.- rest.- The Fly in the Ointment.- append and list.- Postscript.- Exercises 4.- Answers.- 5 A Look Back (and Forward).- Variables: a Sense of Place.- Variable Scope.- Variable Binding.- Free Variables.- Lexical Scoping.- A Software Engineering Problem.- setq.- System Variables.- Exercises 5.- Answers.- 6 Sets and Lists.- Sets of Numbers.- The Set Functions.- Intersection.- disjoint-p.- Subsets.- Complement.- Union.- Exercises 6.- Answers.- 7 Input.- read.- read-line.- Single Characters.- More About #.- Yes or No Responses.- Using the read Primitives.- Exercises 7.- Answers.- 8 Output.- format.- The Control String.- Printing Values.- Format Directives.- Using Arguments as Parameters.- Tabs.- Other Output Functions.- The Telephone Index Again.- The read-eval-print Loop.- The Program-Data Distinction.- Exercises 8.- Answers.- 9 Iterative Constructs.- loop.- return.- do.- The Size of a List.- Iteration v. Recursion.- dotimes.- dolist.- Mapping.- mapcar.- Exercises 9.- Answers.- 10 More About Program Control.- if.- when.- unless.- case.- Synonyms.- Defaults.- Some New Control Constructs.- let.- flet.- progl to progrc.- The Lambda Notation.- Exercises 10.- Answers.- 11 File Handling.- Pathnames.- merge-pathnames.- Streams.- Opening and Closing Files.- Keyword Arguments.- The Body.- Other Keyword Arguments.- Getting the File Back.- EOF-ERROR-P and EOF-VALUE.- Exercises 11.- Answers.- 12 Data Structures.- Association Lists.- pairlis.- The Dot Notation.- assoc.- rassoc.- aeons.- setf.- Database Manipulation.- Trees.- Binary Trees.- The Searching Problem.- Implementing a Binary Tree.- Growing a Tree.- Searching the Tree.- Stacks.- push.- pop.- Exercises 12.- Answers.- 13 Arrays, Strings and Structures.- Arrays.- Changing an Array Element.- Multidimensional Arrays.- Strings.- char.- string=.- string