"Brad Beveridge" brad.beveridge@gmail.com writes:
Yes. By convention, messages on the wire should only contain keywords, nil, and t. But this convention isn't enforced, and the :new-features message obviously violates the convention.
Since packages aren't guarenteed to exist on both sides of the wire, perhaps something like this is in order:
(defun wire-symbol (symbol) (if (keywordp symbol) symbol (make-wire-symbol :package (package-name (symbol-package symbol)) :name (symbol-name symbol))))
...where the WIRE-SYMBOL travels over the wire as something like (:SYMBOL "PACKAGE" "NAME") or #S(SWANK:WIRE-SYMBOL ...). The receiving end can then check if the package exists or not, and act approriately, where "appropriate" is probably context-dependent.
Cheers,
-- Nikodemus Schemer: "Buddha is small, clean, and serious." Lispnik: "Buddha is big, has hairy armpits, and laughs."