[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

side-effecting functions ...



[ I know this has been discussed sometime in the past, so please excuse
  its new presence. ]

Suppose we are going to compile the following forms:

(1) (FUNCALL 'FOO (SETF (SYMBOL-FUNCTION 'FOO) #'NEW-FOO))
(2) (FUNCALL #'FOO (SETF (SYMBOL-FUNCTION 'FOO) #'NEW-FOO))
(3) (FOO (SETF (SYMBOL-FUNCTION 'FOO) #'NEW-FOO))

(Assume FOO is not an FLET/LABELS function..)

I am assuming that #1 uses the function definition for NEW-FOO and
that #2 uses the current definition for FOO. Should #3 behave as
#1 or #2 or is this purposefully left undefined to discourage
coding practices like this?

--David