The Art of Lisp Programming
Başlık:
The Art of Lisp Programming
ISBN:
9781447117193
Personal Author:
Edition:
1st ed. 1990.
Yayın Bilgileri:
London : Springer London : Imprint: Springer, 1990.
Fiziksel Tanımlama:
XIV, 169 p. 20 illus. online resource.
Contents:
1 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.
Abstract:
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.
Ek Kurum Yazarı:
Elektronik Erişim:
Full Text Available From Springer Nature Computer Science Archive Packages
Dil:
English