From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Chong Yidong Newsgroups: gmane.emacs.devel Subject: Re: Emacs on OS X development Date: Sun, 15 Jul 2012 08:54:48 +0800 Message-ID: <87fw8t7siv.fsf@gnu.org> References: <33545A47-0907-4059-92A6-0343CEDD2750@swipnet.se> <869E965F-CD75-46D6-92BB-B3C08C8D846B@swipnet.se> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1342313705 25068 80.91.229.3 (15 Jul 2012 00:55:05 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 15 Jul 2012 00:55:05 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Jul 15 02:55:05 2012 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 1SqD71-0008LY-Jd for ged-emacs-devel@m.gmane.org; Sun, 15 Jul 2012 02:55:03 +0200 Original-Received: from localhost ([::1]:44274 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SqD70-00029V-V4 for ged-emacs-devel@m.gmane.org; Sat, 14 Jul 2012 20:55:02 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:48322) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SqD6y-00029H-J0 for emacs-devel@gnu.org; Sat, 14 Jul 2012 20:55:01 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SqD6x-00036l-8r for emacs-devel@gnu.org; Sat, 14 Jul 2012 20:55:00 -0400 Original-Received: from fencepost.gnu.org ([208.118.235.10]:33646) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SqD6x-00036h-5V for emacs-devel@gnu.org; Sat, 14 Jul 2012 20:54:59 -0400 Original-Received: from cm162.gamma80.maxonline.com.sg ([202.156.80.162]:33979 helo=ulysses) by fencepost.gnu.org with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1SqD6u-0005bg-Oj for emacs-devel@gnu.org; Sat, 14 Jul 2012 20:54:58 -0400 In-Reply-To: (John Wiegley's message of "Sat, 14 Jul 2012 17:56:24 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.10 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:151616 Archived-At: John Wiegley writes: >>>>>> Jan Dj=C3=A4rv writes: > >> I think that for the Emacs project it is more important to support >> other GNU projects than to make the best Emacs we can on non-GNU >> platforms. That is my impression at least. > > I think this is a really bad precedent to set. By making Emacs > inferior to benefit the GNU project, I think we hurt Emacs more than > we benefit GNU. > > If GNU needs so much help that we should sacrifice the excellence of > Emacs at its altar, that speaks volumes right there. This is an old, old argument that I have zero interest in re-hashing. Look, no one is saying that you're not allowed to improve the Mac OS part of the Nextstep port, or that the GNUstep part must must work exactly as well as the Mac OS part. On the contrary; if you want to help improve it, go right ahead. Here's the historical context. Way back during the Emacs 23 development cycle, the Carbon port was completely broken; it could not even compile. It remained so for a period of (IIRC) almost a year, because Yamamoto Mitsuharu was at the time unwilling to keep it up to date with the changes to the terminal and font systems, and apparently no one else could fix it. Since the Cocoa port was in the process of being merged, it was then decided that rather than keep two Mac ports---one of them broken for the indefinite future---we'd just go with Cocoa and work on improving it. As a significant bonus, the Cocoa port would, if whipped into shape, provide GNUstep support along the way. Since then, of course, Yamamoto Mitsuharu has been able to keep the Carbon port alive. More power to him, and great for those users who like that alternative. But AFAICT he's happy to follow his own timing. For instance, for a long period of time during the Emacs 24 cycle, the Mac port was purely 23-only. Hence the decision made during the Emacs 23 pretest remains valid. There's no point including two Mac ports in the tree, with all the attendant demands on documentation and bug reporting, especially if one of those ports keeps going in and out of sync with the rest of Emacs based on when its maintainer decides to update it. Having the Mac port live outside the Emacs tree, under Mitsuharu's control, is an amicable compromise. Now, the problem is that the quality of the Cocoa port has not been improving as quickly as I'd like. But this is essentially because most active Emacs hackers don't work on Mac OS, and those that do are interested in working on stuff other than the Cocoa code. Maybe somehow it's impossible to improve the Cocoa port to get it to work as well as the Carbon port (or at least the Carbon port when the stars are aligned and it's in sync with the development tip). But we are engaged in software programming, not magic! There's nothing that can't be fixed, if someone steps up to the plate to fix it. Even if there are fundamental problems with the Cocoa port, if anyone would like to propose big code changes to fix those flaws, we're perfectly happy to consider/accept them.