Рассмотрим этот пример:
There is a class named 'first', which is defined in package 'a'.
There is also a package 'b' which uses module 'a' functionalities. Certain functions of package 'b' would require a object of class 'first' as a parameter. But besides this, there is no direct logical link between package 'a' and 'b'.
Теперь мне интересно, было бы разумно написать (defmethod package-b-function ((param first)) #|do stuff..|#)
вместо обычной функции, поскольку функции нужен объект, и определение метода прояснит это как для среды выполнения, так и для других пользователей пакета «b».
Раньше я программировал на C++/Java, поэтому я не знаком с соглашениями ООП, которые будут использоваться в этом случае.
Цените свое понимание.