2009-02-09 17 views

Respuesta

1

también:

(let ((ab) (BA)) ...)

+0

que no cambia valores de las variables, sólo crea nuevos enlaces léxicos. –

+2

@ dmitry-vk: Eso es todo lo que necesitas. Depende de lo que estás haciendo, por supuesto. – khedron

1

Otra alternativa, "setf paralelo":

(psetf Abba)

+3

Una diferencia entre 'rotatef' y' psetf' es que si 'a' y' b' son formas realmente más complicadas, entonces 'psetf' evaluará los subformularios dos veces, pero' rotatef' los evaluará solo una vez, que es lo que uno normalmente querría. –

-3

Método bastante espantoso y funciona solo para valores numéricos, pero es más general y no depende de la sintaxis:

a = a^b

b = a^b

a = a^b

Suponiendo que A y B fueron asignados antes, el^medios alternativos exclusivo lógico.

0

Sin embargo, otro enfoque:

(setf (values a b) (values b a)) 
Cuestiones relacionadas