Lecture #11 Programming Languages MISHRA 95

G22.2210

Programming Languages: PL

B. Mishra
New York University.


Lecture # 11

---Slide 1---
Functional Programming

---Slide 2---
Common Lisp

---Slide 3---
HISTORY

---Slide 4---
Common Lisp

---Slide 5---
Lisp Data & Functional Objects

---Slide 6---
Lisp Objects

---Slide 7---
CONS Cells

---Slide 8---
LISTS

---Slide 9---
Proper and Improper Lists

---Slide 10---
List Operations

---Slide 11---
List Predicates

---Slide 12---
Conditional Form

---Slide 13---
Simple Examples

---Slide 14---
LISP EVALUATOR: EVAL

LISP Obj S-expression (Symbolic Expn)
Values

Evaluation Order = ``Inside-Out''

---Slide 15---
QUOTE

---Slide 16---
EVAL

---Slide 17---
USER-DEFINED FUNCTIONS

   (DEFUN <function-name> <argument-list> <body>)

---Slide 18---
Examples: APPEND & REVERSE

   (DEFUN APPEND (X Y)
      (IF (NULL X)
          Y
         (CONS (CAR X) (APPEND (CDR X) Y))))



   (DEFUN REVERSE (LIST)
      (IF (NULL LIST)
          'NIL
          (APPEND (REVERSE (CDR LIST))
                  (CONS (CAR LIST) 'NIL))))

[End of Lecture #11]