GNU bug report logs - #10781
EIEIO namespace use

Previous Next

Package: emacs;

Reported by: Stefan Monnier <monnier <at> iro.umontreal.ca>

Date: Fri, 10 Feb 2012 18:42:01 UTC

Severity: important

Found in version 24.0.92

Done: Noam Postavsky <npostavs <at> users.sourceforge.net>

Bug is archived. No further changes may be made.

Forwarded to http://lists.gnu.org/archive/html/emacs-devel/2013-02/msg00199.html

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 10781 in the body.
You can then email your comments to 10781 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Fri, 10 Feb 2012 18:42:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stefan Monnier <monnier <at> iro.umontreal.ca>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 10 Feb 2012 18:42:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: bug-gnu-emacs <at> gnu.org
Subject: EIEIO namespace use
Date: Fri, 10 Feb 2012 13:39:23 -0500
Package: Emacs
Severity: important
Version: 24.0.92

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'.



In GNU Emacs 24.0.92.1 (i686-pc-linux-gnu, GTK+ Version 2.24.8)
 of 2012-01-17 on pastel
Windowing system distributor `The X.Org Foundation', version 11.0.11103901
Configured using:
 `configure
 'CFLAGS=-Wall -Wno-pointer-sign -DUSE_LISP_UNION_TYPE -DSYNC_INPUT -DENABLE_CHECKING -DXASSERTS -DFONTSET_DEBUG -g -O0'
 '--with-tiff=no''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: fr_CH.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: InactiveMinibuffer

Minor modes in effect:
  shell-dirtrack-mode: t
  diff-auto-refine-mode: t
  electric-pair-mode: t
  electric-indent-mode: t
  url-handler-mode: t
  global-reveal-mode: t
  reveal-mode: t
  auto-insert-mode: t
  savehist-mode: t
  minibuffer-electric-default-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> C-u M-x 
i n f <tab> o <return> C-g C-g <switch-frame> <switch-frame> 
<select-window> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> C-u C-x 
5 1 <switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <help-echo> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<help-echo> <switch-frame> <help-echo> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> C-s a 
u t o m a t i c C-a <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> C-s e i e i o <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> C-s C-w C-w C-w SPC " e i e i <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <select-window> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> C-x 5 
f e / e i e o <backspace> i <tab> . <tab> <return> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <help-echo> <switch-frame> M-x r e p 
- e m - b u <tab> <return>

Recent messages:
Mark set [2 times]
Saving file /home/monnier/cours/ift-2245/H2012/index.html...
Wrote /home/monnier/cours/ift-2245/H2012/index.html
Warning: interactive-p is obsolete! [9 times]
Making completion list...
Quit [2 times]
Warning: interactive-p is obsolete!
Mark saved where search started
Warning: interactive-p is obsolete! [3 times]
Mark saved where search started [2 times]

Load-path shadows:
None found.

Features:
(url-dav xml network-stream starttls url-cache url-http tls url
url-proxy url-privacy url-history mailcap url-auth url-cookie url-gw
url-expand url-methods url-util completion dos-w32 find-cmd lisp-mnt
log-edit pcvs-util add-log wdired ls-lisp find-dired dired-aux dired-x
typer-mode epa-file epa epg epg-config vc-dir descr-text informat
texinfo vc-sccs vc-svn vc-cvs vc-rcs cal-china lunar solar cal-dst
cal-bahai cal-islam cal-hebrew holidays hol-loaddefs cal-french
diary-lib diary-loaddefs cal-move cal-menu calendar cal-loaddefs sort
mail-extr message sendmail rfc822 mml mml-sec mm-decode mm-bodies
mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mail-utils
mailheader emacsbug sh-script conf-mode hideif cpp cmacexp cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs sgml-mode format-spec reftex-vcr reftex-dcr reftex reftex-vars
tex-mode latexenc bbdb-com mailabbrev bbdb timezone whitespace
autorevert doc-view jka-compr image-mode dired cl-specs xscheme trace
testcover scheme unsafep re-builder shadow inf-lisp ielm pp gmm-utils
ert find-func ewoc elp edebug cust-print repeat debug quail rect
multi-isearch dabbrev shell pcomplete vc ediff-merg ediff-diff
ediff-wind ediff-help ediff-util ediff-mult ediff-init ediff
vc-dispatcher executable copyright cus-edit cus-start cus-load wid-edit
smerge-mode newcomment diff-mode vc-bzr filecache mule-util caml tuareg
speedbar sb-image ezimage dframe skeleton compile comint ring derived
smie caml-help caml-types caml-emacs server noutline outline easy-mmode
flyspell ispell eldoc checkdoc regexp-opt thingatpt help-mode view
prog-mode load-dir electric url-handlers url-parse auth-source warnings
eieio byte-opt bytecomp byte-compile cconv macroexp assoc gnus-util
password-cache url-vars mm-util mail-prsvr reveal autoinsert uniquify
advice help-fns advice-preload time-date savehist minibuf-eldef
disp-table cl cl-loaddefs all-autoloads company-autoloads
debbugs-autoloads epoch-view-autoloads jgraph-mode-autoloads
js2-mode-autoloads lmc-autoloads load-dir-autoloads markchars-autoloads
minimap-autoloads muse-autoloads info easymenu oauth2-autoloads
quarter-plane-autoloads rainbow-mode-autoloads register-list-autoloads
sisu-mode-autoloads svg-clock-autoloads undo-tree-autoloads
uni-confusables-autoloads windresize-autoloads package tabulated-list
proof-site proof-autoloads pg-vars bbdb-autoloads agda2 tooltip
ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd
fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer
select scroll-bar mouse jit-lock font-lock syntax font-core frame cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese hebrew greek romanian slovak czech european ethiopic
indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple
abbrev minibuffer loaddefs button faces cus-face files text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
dynamic-setting system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty emacs)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sat, 28 Apr 2012 10:30:02 GMT) Full text and rfc822 format available.

Message #8 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: David Engster <deng <at> randomsample.de>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 10781 <at> debbugs.gnu.org, "Eric M. Ludlam" <eric <at> siege-engine.com>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sat, 28 Apr 2012 12:28:41 +0200
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?

-David




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sat, 28 Apr 2012 12:32:02 GMT) Full text and rfc822 format available.

Message #11 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: "Eric M. Ludlam" <ericludlam <at> gmail.com>
To: David Engster <deng <at> randomsample.de>
Cc: 10781 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sat, 28 Apr 2012 08:29:48 -0400
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




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sat, 28 Apr 2012 15:25:01 GMT) Full text and rfc822 format available.

Message #14 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: 10781 <at> debbugs.gnu.org
Cc: "Eric M. Ludlam" <eric <at> siege-engine.com>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sat, 28 Apr 2012 11:22:47 -0400
>> 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?

We'll hopefully be moving the CL library to a new `cl-lib' which uses
the "cl-" prefix consistently.  Maybe EIEIO can use the same prefix for
those cases where "eieio-" would be inconvenient?
This said, the most pressing issue is `this'.


        Stefan




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sat, 28 Apr 2012 15:57:02 GMT) Full text and rfc822 format available.

Message #17 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: David Engster <deng <at> randomsample.de>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 10781 <at> debbugs.gnu.org, "Eric M. Ludlam" <eric <at> siege-engine.com>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sat, 28 Apr 2012 17:55:07 +0200
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?
>
> We'll hopefully be moving the CL library to a new `cl-lib' which uses
> the "cl-" prefix consistently.  Maybe EIEIO can use the same prefix for
> those cases where "eieio-" would be inconvenient?
> This said, the most pressing issue is `this'.

Yes, I think 'this' should indeed become 'eieio-this'. It will also be
the most work, since at least in CEDET you *very* often have

(defmethod foo ((this someclass) ...)
 ...)

so a 'this' in such a method is perfectly fine.

-David




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sat, 28 Apr 2012 19:45:02 GMT) Full text and rfc822 format available.

Message #20 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
To: David Engster <deng <at> randomsample.de>
Cc: 10781 <at> debbugs.gnu.org, "Eric M. Ludlam" <eric <at> siege-engine.com>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sat, 28 Apr 2012 15:43:05 -0400
> Yes, I think 'this' should indeed become 'eieio-this'. It will also be
> the most work, since at least in CEDET you *very* often have

> (defmethod foo ((this someclass) ...)
>  ...)

> so a 'this' in such a method is perfectly fine.

An alternative approach is to keep the name `this' but get rid of the
global definition.  I.e. Either completely remove the (defvar this nil),
or replace it with (defvar this).


        Stefan




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sat, 28 Apr 2012 21:06:01 GMT) Full text and rfc822 format available.

Message #23 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: David Engster <deng <at> randomsample.de>
To: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Cc: 10781 <at> debbugs.gnu.org, "Eric M. Ludlam" <eric <at> siege-engine.com>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sat, 28 Apr 2012 23:03:40 +0200
Stefan Monnier writes:
>> Yes, I think 'this' should indeed become 'eieio-this'. It will also be
>> the most work, since at least in CEDET you *very* often have
>
>> (defmethod foo ((this someclass) ...)
>>  ...)
>
>> so a 'this' in such a method is perfectly fine.
>
> An alternative approach is to keep the name `this' but get rid of the
> global definition.  I.e. Either completely remove the (defvar this nil),
> or replace it with (defvar this).

Eric, what would you prefer? I don't know enough about CLOS to say how
important a global 'eieio-this' actually is. Either way, I just tested
both solutions on CEDET trunk and each produced exactly this single
compile warning:

In ede-flush-directory-hash:
files.el:230:38:Warning: reference to free variable `this'

So actually, this appears to be a much smaller issue than I initially
thought. It seems pretty much every 'this' in CEDET is already bound in
the defmethod's argument list.

-David




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sat, 28 Apr 2012 22:32:02 GMT) Full text and rfc822 format available.

Message #26 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: "Eric M. Ludlam" <ericludlam <at> gmail.com>
To: David Engster <deng <at> randomsample.de>
Cc: 10781 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sat, 28 Apr 2012 18:29:44 -0400
On 04/28/2012 05:03 PM, David Engster wrote:
> Stefan Monnier writes:
>>> Yes, I think 'this' should indeed become 'eieio-this'. It will also be
>>> the most work, since at least in CEDET you *very* often have
>>
>>> (defmethod foo ((this someclass) ...)
>>>   ...)
>>
>>> so a 'this' in such a method is perfectly fine.
>>
>> An alternative approach is to keep the name `this' but get rid of the
>> global definition.  I.e. Either completely remove the (defvar this nil),
>> or replace it with (defvar this).
>
> Eric, what would you prefer? I don't know enough about CLOS to say how
> important a global 'eieio-this' actually is. Either way, I just tested
> both solutions on CEDET trunk and each produced exactly this single
> compile warning:
>
> In ede-flush-directory-hash:
> files.el:230:38:Warning: reference to free variable `this'
>
> So actually, this appears to be a much smaller issue than I initially
> thought. It seems pretty much every 'this' in CEDET is already bound in
> the defmethod's argument list.

I would be happy to see 'this' just completely removed.  It was put in 
when I was mimicing C++, and some old programs of mine that have long 
since rotted away depended on it.  I'm actually surprised there was a 
reference to it in CEDET still.  That will be good to clean up.

Eric




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sun, 29 Apr 2012 08:08:02 GMT) Full text and rfc822 format available.

Message #29 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: David Engster <deng <at> randomsample.de>
To: "Eric M. Ludlam" <ericludlam <at> gmail.com>
Cc: 10781 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sun, 29 Apr 2012 10:06:27 +0200
Eric M. Ludlam writes:
> I would be happy to see 'this' just completely removed.  It was put in
> when I was mimicing C++, and some old programs of mine that have long
> since rotted away depended on it.  I'm actually surprised there was a
> reference to it in CEDET still.  That will be good to clean up.

OK, I will take care of that.

And while I'm at it: What about 'scoped-class'? It is only used in
`eieio-slot-name-index' and `call-next-method' in EIEIO itself, so it
could at least be made local? I'm not sure if it can be removed
completely.

-David





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10781; Package emacs. (Sun, 29 Apr 2012 12:17:01 GMT) Full text and rfc822 format available.

Message #32 received at 10781 <at> debbugs.gnu.org (full text, mbox):

From: Eric Ludlam <ericludlam <at> gmail.com>
To: David Engster <deng <at> randomsample.de>
Cc: 10781 <at> debbugs.gnu.org, Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Subject: Re: bug#10781: EIEIO namespace use
Date: Sun, 29 Apr 2012 08:14:51 -0400
 On 04/29/2012 04:06 AM, David Engster wrote:
> Eric M. Ludlam writes:
>> I would be happy to see 'this' just completely removed.  It was put in
>> when I was mimicing C++, and some old programs of mine that have long
>> since rotted away depended on it.  I'm actually surprised there was a
>> reference to it in CEDET still.  That will be good to clean up.
> OK, I will take care of that.
>
> And while I'm at it: What about 'scoped-class'? It is only used in
> `eieio-slot-name-index' and `call-next-method' in EIEIO itself, so it
> could at least be made local? I'm not sure if it can be removed
> completely.

That is an internal symbol... or should be, and can be renamed as such.

Thanks David!
Eric




Set bug forwarded-to-address to 'http://lists.gnu.org/archive/html/emacs-devel/2013-02/msg00199.html'. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 11 Feb 2013 00:31:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 10781 <at> debbugs.gnu.org and Stefan Monnier <monnier <at> iro.umontreal.ca> Request was from Noam Postavsky <npostavs <at> users.sourceforge.net> to control <at> debbugs.gnu.org. (Fri, 10 Jun 2016 00:18:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 08 Jul 2016 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 9 years and 40 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.