Определить значение в каждой строчке - Lisp

Формулировка задачи:

}Я совсем запуталась, очень важная контрольная
1.1. (Defun Izm(x) (Setq x 'новое)) ->
       (Setq x 'старое) ->
       (Izm x) ->
        x->
        Старое->
       (Izm 'x) ->
        x->
1.2. (Defun Izm(x) (Set x 'новое))->
       (Setq x 'старое) ->
       (Izm x) ->
        x ->
        Старое->
       (Izm 'x)->
        x->
 
2. 
1.1. (Defun Izm(x) (Eval 'x)) ->
       (Setq x 'старое) ->
       (Izm 'новое) ->
       x ->
       (Izm 'x) ->
       x ->
       (Izm x) -> 
       x ->
 
1.2. (Defun Izm(x) (Eval x)) ->
       (Setq x 'старое) ->
       (Izm 'новое) ->
        x->
       (Izm 'x) ->
        x ->
       (Izm x) ->
        x ->
       (Setq новое 8)->
       (Izm 'новое) ->
       (Setq старое 5) ->
       (Izm x) ->

Код к задаче: «Определить значение в каждой строчке - Lisp»

textual
[1]> (defun izm(x) (setq x 'новое))
IZM
[2]> (setq x 'старое)
СТАРОЕ
[3]> (izm x)
НОВОЕ
[4]> x
СТАРОЕ
[5]> Старое
 
*** - SYSTEM::READ-EVAL-PRINT: variable СТАРОЕ has no value
Имеются следующие варианты продолжения:
USE-VALUE      :R1      Input a value to be used instead of СТАРОЕ.
STORE-VALUE    :R2      Input a new value for СТАРОЕ.
ABORT          :R3      Прервать главный цикл
Break 1 [6]> 
[7]> (izm 'x)
НОВОЕ
[8]> x
СТАРОЕ
[9]> 
 
(defun izm(x) (set x 'новое))
IZM
[10]> (setq x 'старое)
СТАРОЕ
[11]> (izm x)
НОВОЕ
[12]> x
СТАРОЕ
[13]> Старое
НОВОЕ
[14]> (izm 'x)
НОВОЕ
[15]> x
НОВОЕ
[16]> 
 
(defun izm(x) (eval 'x))
IZM
[17]> (setq x 'старое)
СТАРОЕ
[18]> (izm 'новое)
СТАРОЕ
[19]> x
СТАРОЕ
[20]> (izm 'x)
СТАРОЕ
[21]> x
СТАРОЕ
[22]> (izm x)
СТАРОЕ
[23]> x
СТАРОЕ
[24]> 
 
(defun izm(x) (eval x))
IZM
[25]> (setq x 'старое)
СТАРОЕ
[26]> (izm 'новое)
 
*** - EVAL: variable НОВОЕ has no value
Имеются следующие варианты продолжения:
USE-VALUE      :R1      Input a value to be used instead of НОВОЕ.
STORE-VALUE    :R2      Input a new value for НОВОЕ.
ABORT          :R3      Прервать главный цикл
Break 1 [27]> 
[28]> x
СТАРОЕ
[29]> (izm 'x)
СТАРОЕ
[30]> x
СТАРОЕ
[31]> (izm x)
НОВОЕ
[32]> x
СТАРОЕ
[33]> (setq новое 8)
8
[34]> (izm 'новое)
8
[35]> (setq старое 5)
5
[36]> (izm x)
5

6   голосов, оценка 4.000 из 5


СОХРАНИТЬ ССЫЛКУ