GNU bug report logs -
#10781
EIEIO namespace use
Previous Next
Full log
View this message in rfc822 format
On 04/28/2012 06:28 AM, David Engster wrote:
> Stefan Monnier writes:
>> EIEIO needs to be cleaned up so it doesn't intrude all over
>> the namespace.
>> The worst offenders include:
>> - `this'.
>> - `slot-*'.
>> - `constructor', `destructor'.
>> - `delete-instance'.
>> - `initialize-instance'.
>> - `clone'.
>> - `data-debug*'.
>> - `make-instance'.
>> - `oref'.
>> - `oset'.
>> - `with-slots'.
>> - `object-*'.
>> - `class-*'.
>> - `next-method-p'.
>> - `call-next-method'.
>> - error symbols (like no-next-method).
>> - ... probably `defmethod', `defclass', and `defgeneric'.
>
> I think this should be a goal for the next merge, but I'm at a loss
> regarding how this should be tackled without, you know, breaking
> practically every bit of code in CEDET and probably others. Do you have
> a suggestion? Maybe even creating EIEIOv2 and slowly porting CEDET to
> that?
Many symbols in eieio are the names given by CLOS, like
initialize-instance, make-instance, with-slots, and call-next-method.
Other names like oref/oset were meant to fill gaps where Emacs couldn't
do it the clos way. If Emacs is to have a good way to do some basic OO
programming, it seems to me that the names would match up with other
core functions that crowd the core namespace, and it would seem poor to
fill your oo code with a bunch of unnecessarily long names.
That said, there are certainly plenty that could be removed, and I would
not be sad to see them go... like 'this' and a few of the class-* and
object-* functions. Some already have eieio-* equivalents, but I didn't
finish that.
Eric
This bug report was last modified 9 years and 41 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.