emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: A unified project root interface


From: Eric M. Ludlam
Subject: Re: A unified project root interface
Date: Thu, 21 Mar 2013 00:07:13 -0400
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.3a1pre) Gecko/20091222 Shredder/3.1a1pre

On 03/20/2013 11:27 PM, Stefan Monnier wrote:
My initial experiments show I'm on the right track.
David, is there something that needs merging from Emacs to CEDET I need to
worry about before making massive structural changes in EIEIO?

The EIEIO in Emacs has my renaming patch (which fixes some of the
namespace issues, tho it's only a first step).

Maybe it would make sense to make this change on Emacs's side only.
And to split EIEIO from CEDET (you can distribute an "old EIEIO" for
users of CEDET on older Emacsen that came without EIEIO).

Hmmm, well, I managed to split EIEIO to no longer use eval-and-compile, and it is passing my unit tests, but not my integration tests. I made CEDET branch with this change in it in case someone wants to play with it.

http://cedet.bzr.sourceforge.net/bzr/cedet/code/eieiosplit/files/head%3A/lisp/eieio/

Getting the integration tests to pass is more than I have time for tonight though.

If the goal is to use EDE's detection scheme and data, but not load EDE
project classes, then we are all set already since the EDE project classes
are not directly involved in detecting the projects.  If the goal is to not
use EIEIO at all, then we'd end up just using a plist other random data
structure instead of using EIEIO to do it.  This wouldn't be a big deal
because AFAIK, these classes aren't subclassed, so impact would be small.

I'mnot sure I understand exactly what you're saying, but IIUC you're
saying that there's not much to do to delay EDE loading, and we could
even delay loading of EIEIO with a few code changes.

Correct

That sounds promising and confirms my intuition.

Alternately, perhaps I can find out why EIEIO isn't acceptable, and fix
that instead.

Preloading EIEIO and EDE is not something I'm ready to do.  Even just
preloading EIEIO is not something I'm ready to do either.

Is this stating that the goal is for project detection to be part of Lisp code that is dumped with Emacs?

I haven't started to think about why, but I'm pretty sure EDE is out of
the question for now.  For EIEIO, maybe we could take a look at what it
would entail to see under which circumstances it would be acceptable,
but first it'd need to be namespace clean.

From what you say above, it's probably easier to change EDE to not use
EIEIO for the data used for project-detection, before EDE is
actually loaded.

If we are talking about what gets dumped out with Emacs, I agree.

Eric



reply via email to

[Prev in Thread] Current Thread [Next in Thread]