text: В языке с поддержкой мультиметодов, таком, как Common Lisp, код выглядел бы вот так: (defgeneric collide (x y)) (defmethod collide ((x asteroid) (y asteroid)) ;;астероид сталкивается с астероидом ) (defmethod collide ((x asteroid) (y spaceship)) ;;астероид сталкивается с космическим кораблем ) (defmethod collide ((x spaceship) (y asteroid)) ;;космический корабль сталкивается с астероидом ) (defmethod collide ((x spaceship) (y spaceship)) ;;космический корабль сталкивается с космическим кораблем ) и аналогично для других методов.