From: Eli Zaretskii <eliz@gnu.org>
To: Daniel Colascione <dancol@dancol.org>
Cc: emacs-devel@gnu.org
Subject: Re: Project systems (again)
Date: Fri, 18 Apr 2014 10:50:11 +0300 [thread overview]
Message-ID: <83tx9rgjpo.fsf@gnu.org> (raw)
In-Reply-To: <5350CF28.9010702@dancol.org>
> Date: Fri, 18 Apr 2014 00:07:20 -0700
> From: Daniel Colascione <dancol@dancol.org>
> CC: emacs-devel@gnu.org
>
> > FWIW, I'd prefer that you work with EDE developers to improve and
> > extend what they have;
>
> If EIEIO can't be preloaded (or, equivalent morally, autoloaded on
> find-file), there's no point in pursuing EDE improvements. An EIEIO-less
> EDE would be an EDE rewrite anyway.
I don't know enough about this: why couldn't EIEIO be autoloaded?
> Plus, I don't think the problem space really warrants a complex
> object system: conventional elisp idioms are adequate.
Since EDE is already there, I think this is a moot point. (I believe
Eric explained why this design was chosen a while ago.)
> > starting from scratch (or almost from scratch)
> > sounds like waste of effort, especially since some of the EDE is
> > already in Emacs.
>
> I really don't want to start from scratch, but I think it's the best
> option. A project system is one of those systems for which the hard part
> isn't the coding, but agreeing on having a single interface to the code.
> I think we need something much simpler than what exists.
Then how about asking the EDE developers to provide an "easy-ede"
layer which would conceal the complexity for those situations where
the corresponding power is not needed?
> I find the abstractions in EDE to be much more confusing than they are
> useful. For something that, at its core, ought to be very simple, there
> are too many concepts --- target, project, sub-project, config, project
> placeholder, too much shared state, and too few opportunities for ad-hoc
> customization. The system feels specialized for a project based on
> nested autoconf files that build C and C++, and the documentation
> reflects that. I understand that EDE started simple and grew
> functionality, but this functionality belongs in separate layers, not
> mingled into the core.
I see your point. However, EDE was added to Emacs with the intent
that it serves as basis for developing features such as what you have
in mind. If there's a reasonably practical way of basing your project
on EDE, I think we should explore that possibility first, even if it
requires more work on the EDE infrastructure side, because not doing
so would waste the effort of integrating EDE into Emacs.
next prev parent reply other threads:[~2014-04-18 7:50 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-17 21:52 Project systems (again) Daniel Colascione
2014-04-18 6:37 ` Eli Zaretskii
2014-04-18 7:07 ` Daniel Colascione
2014-04-18 7:50 ` Eli Zaretskii [this message]
2014-04-18 7:58 ` Daniel Colascione
2014-04-18 8:49 ` Eli Zaretskii
2014-04-19 1:45 ` Eric M. Ludlam
2014-04-19 14:26 ` Stefan Monnier
2014-04-19 19:37 ` Eric M. Ludlam
2014-04-18 15:52 ` Stefan Monnier
2014-04-18 18:37 ` Alex Ott
2014-04-18 14:03 ` Dmitry Gutov
2014-04-19 8:55 ` Bozhidar Batsov
2014-04-19 14:28 ` Stefan Monnier
2014-04-19 16:52 ` Daniel Colascione
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83tx9rgjpo.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=dancol@dancol.org \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).