Re: Generics vs. Message passing: object namespaces
Randall Randall <[email protected]>
| Newsgroups | gmane.comp.lang.lightweight |
|---|---|
| Message-ID | <[email protected]> |
On Feb 22, 2007, at 7:17 PM, Pascal Costanza wrote: > On 23 Feb 2007, at 00:14, Tom Locke wrote: > >>> With a good module / package / type system, you can say (append >>> buffer x) when it's unambiguous what you mean, and (buffer:append >>> buffer x) when it's not. >> >> Does "good" mean better than anything we currently have in a >> production-grade language? >> >> CLOS and Dylan do in fact suffer from type-name-in-the-method-name >> syndrome do they not? > > The simplest answer I can think of is this: Generic functions are > just functions, so any approach that solves namespace management > issues well for function names is automatically also good enough > for generic function names. But these should accomplish different things. Regular functions need to be kept separate, but generic functions need to be folded into the same name in the namespace you're using them in, unless there's some specific reason the programmer doesn't want to do that. -- Randall Randall <[email protected]> "If you are trying to produce a commercial product in a timely and cost efficient way, it is not good to have somebody's PhD research on your critical path." -- Chip Morningstar