Assignment: #lisp1 Due: 12/02/02018 Points: 5
```[0] Who is considered the "father" of Lisp?

[1] Write a Lisp expression that evaluates to T if the first element
in a list equals the last element in the same list.

[2] Write a Lisp 'equal' expression that evalutes to T when
two 'when' expressions are used to compare T and not T. [help]

[3] Define a Lisp function named 'intargs' that takes three arguments
and evaluates to T if all the arguments are integers.

prompt: (defun intargs (a b c) (YOUR_CODE_GOES_HERE))
INTARGS

prompt: (intargs 1 2 3)
T

prompt: (intargs 1 2.5 3)
NIL

prompt: (intargs 1 2 "hello")
NIL

[4] Draw the block diagram for the following:  (cons 5 (cons 4 nil))

[5] T or NIL:  (equal (cons 5 (cons 4 nil)) (cons 5 4))

[6] Write a predicate function named samesignp that
takes two arguments and evaluates to T if they have the same
sign (otherwise evaluate to NIL). It is okay to assume the
arguments are numbers.

prompt: (defun samesignp (x y) (your_code_goes_here))
SAMESIGNP

prompt: (SAMESIGNP 5 2)
T

prompt: (SAMESIGNP 5 -2)
NIL

[7] Write a 'dolist' expression to print the elements of
(list 1 4 6) separated by ...

prompt: (dolist your_code_goes_here)
1...4...6...

[8] Briefly explain why the variable x evaluates
to 240 after being used as input to the ++ function.

prompt: (setf x 240)
240

prompt: (defun ++ (x) (setf x (1+ x)) (format nil "~a" x))
++

prompt: (++ x)
"241"

prompt: x
240

[9] Write a Lisp expression that evaluates the square-root
of the quantity b^2 - 4ac. Assign values to a, b, c using
(setf a -2 b 3 c -4).

;;
;; The remaining exercises use the variable named list.
;; (setf list '((1 2 3) (4 5) (6 7 8 9)))
;;

[10] Write a single c....r expression that evaluates to the integer 5
when given the argument list.

prompt: (c....r list)    ; your expression replaces the ....

[11] Write a Lisp expression that evaluates to the 3rd element in list.

prompt: (YOUR_CODE_GOES_HERE)
(6 7 8 9)

[12] Explain why the following Lisp expression evaluates to one.
(min (car (car list)) (car (cdr (car list))) (car (cddr (car list))))

```