From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Engster Newsgroups: gmane.emacs.devel Subject: Re: IDE Date: Sun, 18 Oct 2015 19:12:31 +0200 Message-ID: <87wpukje2o.fsf@isaac.fritz.box> References: <5612E996.7090700@yandex.ru> <83bnc7tavr.fsf@gnu.org> <5618C92A.3040207@yandex.ru> <83a8rrt9ag.fsf@gnu.org> <871tcyexa9.fsf@fimbulvetr.bsc.es> <87612a7my2.fsf@fencepost.gnu.org> <561DC925.5050001@siege-engine.com> <561E32D2.4060501@yandex.ru> <83wpum3ozk.fsf@gnu.org> <87si59ln6u.fsf@isaac.fritz.box> <56224B63.3010803@yandex.ru> <87k2qlldny.fsf@isaac.fritz.box> <5622AD4D.3010504@yandex.ru> <87bnbwl7ac.fsf@isaac.fritz.box> <5623CA16.5090300@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1445188385 14022 80.91.229.3 (18 Oct 2015 17:13:05 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 18 Oct 2015 17:13:05 +0000 (UTC) Cc: John Wiegley , Eli Zaretskii , emacs-devel@gnu.org To: Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Oct 18 19:12:54 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZnrVt-0004Mh-5c for ged-emacs-devel@m.gmane.org; Sun, 18 Oct 2015 19:12:53 +0200 Original-Received: from localhost ([::1]:34792 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZnrVs-0003Mf-O0 for ged-emacs-devel@m.gmane.org; Sun, 18 Oct 2015 13:12:52 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45660) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZnrVk-0003HO-Ld for emacs-devel@gnu.org; Sun, 18 Oct 2015 13:12:45 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZnrVf-0003ky-FC for emacs-devel@gnu.org; Sun, 18 Oct 2015 13:12:44 -0400 Original-Received: from randomsample.de ([5.45.97.173]:38306) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZnrVf-0003jb-7D; Sun, 18 Oct 2015 13:12:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=randomsample.de; s=a; h=Content-Type:MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From; bh=fIHNRlNj9/nnsdTYrwJMUg3XDiX+ryB8DW+vQiJjOnc=; b=P+8zsv9znSYnmLiD9yu82pAnZ6LQjHaOZAHj8IjnA5kVgoZn63dNnx711k4uYzfPtyKclzbW4GbmcwK9VUAvJ/8JpaK+4sO1NlBFhE4rcWhn/aIhXqEx3rhqZzD5eeh9; Original-Received: from ip4d1645ea.dynamic.kabel-deutschland.de ([77.22.69.234] helo=isaac.fritz.box) by randomsample.de with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from ) id 1ZnrVY-0000Cu-2x; Sun, 18 Oct 2015 19:12:32 +0200 In-Reply-To: <5623CA16.5090300@yandex.ru> (Dmitry Gutov's message of "Sun, 18 Oct 2015 19:34:30 +0300") User-Agent: Gnus/5.13001 (Ma Gnus v0.10) Emacs/24.5 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 5.45.97.173 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:191976 Archived-At: Dmitry Gutov writes: >> Well, it's not like a bunch of people are hacking on the C >> parser. Several things happened: > > It's not like I'm blaming anyone, really. But it leaves an impression > of CEDET being more of a research project. It leaves the impression of an understaffed project. > I'm sure that's not all they have. They have completion, and they have > (at least some kind of) refactorings using the same interface across > products. That hints at flexible coupling between components. It's not a secret: http://www.jetbrains.org/intellij/sdk/docs/reference_guide/custom_language_support.html I haven't looked at it in detail, but it looks familiar to me. >> Ever tried to load some random make-based C++ project into Visual C++? > > It probably won't work. But so what? It's great that you have a > solution for this in CEDET, We don't. Makefiles are way too complex. The best solution IMHO is using compilation databases, and EDE upstream has support for them. Of course, it's another LLVM thingy, so I'm not sure if I'm allowed to merge it. > but it shouldn't impose particular constraints on what a project API > should look like. At least I don't see why or how it should. My point is that people say they want an Emacs to be an "IDE", but at the same time they don't want to be restricted in their Emacs usage, and rightfully so. A typical IDE like Visual C++ forces you into using their project system, otherwise nothing will work. So people want IDE-features, but at the same time they want all the freedom Emacs allows. And that's what CEDET tries to support. Eric started with EDE as a project system similar to other IDEs, that means you can start a project from scratch with EDE and it will manage the build for you by generating a Makefile. While technically impressive, I never liked this kind of project system, and honestly, I think we should probably drop that part from EDE. But you are not forced to use it, because Eric also added a custom project detection that is very flexible. But if you manage the build yourself, you have to specify everything manually (include paths, used compiler, etc.). It doesn't help that Emacs is a very conservative piece of software. A good example was already given: C++ includes without an extension. By default, Emacs will open such files in fundamental mode. The GNU libc actually has local variables comments in their includes just for that reason! But of course, Qt does not have those, so Emacs cannot parse those files by default, and people complain about Semantic not parsing anything. Any other C++ IDE will make that decision for you, but guess what would happen if we simply modified people's auto-mode-alist? -David