Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!cs.utexas.edu!oakhill!dover!hume From: hume@buckwheat.mot.sps.com (Chris Hume) Newsgroups: comp.lang.lisp Subject: Interface Export: Protection at the Boundary Message-ID:Date: 25 Sep 89 23:00:40 GMT Sender: news@dover.sps.mot.com Distribution: comp.lang.lisp Lines: 26 How should generic functions be exported from their home packages? If a function like DESCRIBE is already in conventional use, then it seems best NOT to attempt to export it from "RANDOM" package even though this package may specialize DESCRIBE methods to its own random classes. Of course, the "RANDOM" methods must remain congruent with whatever interface has come into conventional use. [I'm somewhat confused about how this works anyway. Does method dispatching ignore the packages of function/method specifiers?] Exporting the DESCRIBE interface from "RANDOM" would cause conflict with the home package in implicit use (e.g., "LISP") where explicit use of the "RANDOM" package is also requested. In the event that a function like INVERT may await conventional definition, its interface MUST BE exported from "RANDOM". In this case, otherwise congruent interfaces defined in separate packages seem obligated to generate SYMBOL-PACKAGE conflicts. Some sort of "KEYWORD" package for generic function specifiers might alleviate this interface registration problem. It appears there is no conventional "home" package for generic functions. Chris -- Phone: (602) 994-6835 EMail: hume@sps.mot.com