From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?UTF-8?Q?Przemys=C5=82aw_Wojnowski?= Newsgroups: gmane.emacs.devel Subject: Re: Emacs rewrite in a maintainable language Date: Tue, 13 Oct 2015 10:27:16 +0200 Message-ID: <6909324d6de8929192a27fc0be8267d4@mail.iq.pl> References: <561A19AB.5060001@cumego.com> <87io6dl0h0.fsf@wanadoo.es> <87lhb82qxc.fsf@gmail.com> <87oag4jk74.fsf@wanadoo.es> <87k2qrki45.fsf@wanadoo.es> <83oag3oosv.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1444724886 16700 80.91.229.3 (13 Oct 2015 08:28:06 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 13 Oct 2015 08:28:06 +0000 (UTC) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Oct 13 10:27:56 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 1Zluw3-0008I2-4m for ged-emacs-devel@m.gmane.org; Tue, 13 Oct 2015 10:27:51 +0200 Original-Received: from localhost ([::1]:33030 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zluw2-0001hP-Gh for ged-emacs-devel@m.gmane.org; Tue, 13 Oct 2015 04:27:50 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45195) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZluvZ-0001gz-TN for emacs-devel@gnu.org; Tue, 13 Oct 2015 04:27:22 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZluvW-0002ie-OB for emacs-devel@gnu.org; Tue, 13 Oct 2015 04:27:21 -0400 Original-Received: from smtp23.iq.pl ([86.111.242.228]:57117) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZluvW-0002iI-EC for emacs-devel@gnu.org; Tue, 13 Oct 2015 04:27:18 -0400 Original-Received: (qmail 13902 invoked from network); 13 Oct 2015 08:27:16 -0000 Original-Received: from unknown (HELO roundcube.iq.pl) ([86.111.241.60]) (envelope-sender ) by smtp22.iq.pl with SMTP for ; 13 Oct 2015 08:27:16 -0000 Original-Received: from [89.174.214.74] by roundcube.iq.pl with HTTP (HTTP/1.1 POST); Tue, 13 Oct 2015 10:27:16 +0200 In-Reply-To: <83oag3oosv.fsf@gnu.org> X-Sender: esperanto@cumego.com User-Agent: Roundcube Webmail X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 86.111.242.228 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:191433 Archived-At: W dniu 2015-10-12 21:43, Eli Zaretskii napisaƂ(a): > I don't think this is possible. Some slowdown will be inevitable. IMHO the performance is overestimated. Look at Java based IDEs - Idea, Eclipse, Netbeans, etc. All of them have been written in _slow_ Java (at least according to C standard) and run on _slow_ JVM. But all of them are able to attract more users that Emacs, which has core in blazing fast C. The truth is that nobody cares about performance as long as it is _good enough_. Of course it is important, but, as many other things, to some level, beyond which further progress in that direction doesn't matter much and other features become important. Moreover, the value of performance will change over time (probably decrease) as can be seen through last decades, because computers have more resources. I started the topic with the keyword "maintainable", because IMHO it's very important factor for long living and growing projects. In such projects (proprietary and open source) people come and go with the knowledge and skills they had. So, from project existence standpoint, it's important to make it easy for the new developers to acquire the knowledge from the code/docs/whatsleft. Languages will come and go (sometimes stay longer, though), but if the code is easy to reason about, test, modify, etc. then it will be easier to move (maybe even translate) to another language, find bugs, and find new people who will be able to work with it. IMHO C lacks basic abstractions that reduce conceptual weight of any subsystem/library/concept/etc. Interfaces and namespaces do. Static typing would also help.