From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Alexis Newsgroups: gmane.emacs.devel Subject: Re: Emacs Lisp's future (was: Guile emacs thread (again)) Date: Thu, 18 Sep 2014 12:07:36 +1000 Message-ID: <87egv9y5m6.fsf@gmail.com> References: <87wq97i78i.fsf@earlgrey.lan> <20140917202418.240bbd2c@forcix> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1411010618 26773 80.91.229.3 (18 Sep 2014 03:23:38 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 18 Sep 2014 03:23:38 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Sep 18 05:23:33 2014 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 1XUSJg-0007rk-UU for ged-emacs-devel@m.gmane.org; Thu, 18 Sep 2014 05:23:33 +0200 Original-Received: from localhost ([::1]:48299 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XUSJg-0000Qj-Ec for ged-emacs-devel@m.gmane.org; Wed, 17 Sep 2014 23:23:32 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48280) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XUSJP-0000Pl-Mt for emacs-devel@gnu.org; Wed, 17 Sep 2014 23:23:21 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XUSJJ-0007M6-KR for emacs-devel@gnu.org; Wed, 17 Sep 2014 23:23:15 -0400 Original-Received: from mail-pa0-x22a.google.com ([2607:f8b0:400e:c03::22a]:58440) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XUSJJ-0007Ls-Cn for emacs-devel@gnu.org; Wed, 17 Sep 2014 23:23:09 -0400 Original-Received: by mail-pa0-f42.google.com with SMTP id lj1so489251pab.29 for ; Wed, 17 Sep 2014 20:23:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=references:from:to:subject:date:in-reply-to:message-id:mime-version :content-type; bh=3LOb3m76mOzrlQhrya9e7Ru8wDptRrDI19mQHG1/rbk=; b=YPDidpkccy5En5wgo/4tV1ThKarRjtclYuphbY2ySkJhu8z+hK6veHZ7JUFSOHQ0LD AS3eSva3XxEhZe/IphnDo5ymg3+mpvsAVG0zCLXuKQiu9oKhv1XJQ1FAVZziy4mH+vvj YyucDwiw2qmBEOnL7r31nYNWW07VwmUja7Fe9hqcwS6iR/vTwbGenguMX715pJ9orf8i qZaCDDUioze49qFYuFlrjjQs83JrFTapzAHoJbD+DDkfny7IKzgoTiDCBXowrmMWTKca XVg5ijjJw6FxfpCqI7pA3meEVAUD9E6a2sQQDWifWuFiTo+ckObFqnh5mlBnGwI9PpkO TKFQ== X-Received: by 10.66.163.65 with SMTP id yg1mr1669439pab.33.1411010583292; Wed, 17 Sep 2014 20:23:03 -0700 (PDT) Original-Received: from localhost (ppp118-209-61-149.lns20.mel4.internode.on.net. [118.209.61.149]) by mx.google.com with ESMTPSA id qx4sm18250619pbc.14.2014.09.17.20.23.00 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Wed, 17 Sep 2014 20:23:02 -0700 (PDT) In-reply-to: <20140917202418.240bbd2c@forcix> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2607:f8b0:400e:c03::22a 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:174479 Archived-At: Jorgen Schaefer writes: > I think the (often-cited, not just here) idea of supporting multiple > languages is a red herring, mostly. Every extension language supported > adds some burden on those who want to understand what their editor > does, not just use pre-packaged code. One of the great things about > Emacs is that, once I know ELisp, I have a good chance of > understanding and modifying any extension I see. +1. It seems to me that much discussion around this issue focuses on being able to use one's favourite language to extend Emacs, without considering what it might be like to: * start using an extension that seems like it might significantly assist one's productivity; * find a show-stopping bug in it; and * discover that the extension is written in a programming language one loves to loathe. Also, to an (admittedly very limited) extent, it's /already/ possible to use a number of languages other than ELisp in Emacs, for at least some things, via org-babel: http://orgmode.org/manual/Evaluating-code-blocks.html#Evaluating-code-blocks A list of languages currently supported by org-babel can be found at: http://orgmode.org/manual/Languages.html#Languages i would be interested to know what experiences people might have had in using org-babel as part of an Emacs extension .... > Speaking of third-party libraries, s.el, dash.el and f.el provide > things that really ought to be in core Emacs. Agreed. i've found it quite surprising that simple functions like -flatten and s-repeat aren't available in ELisp by default. > The regex engine is annoying to use. Providing some interface to PCRE > would be a great step forward, and does not even have to be > backwards-incompatible. i like this suggestion. i'm rather comfortable with Perl5 REs, and can find myself frustrated trying to create REs in ELisp. Having said that, the issue is not usually the syntax of ELisp REs per se (e.g. needing to escape things like capturing parentheses or the alternatives pipe); it's needing to escape various things /further/ because REs can only be specified in the form of a standard ELisp string. On several occasions i've ended up using a combination of pcre-to-elisp and re-builder to try to work out if the problem is too few backslashes, too many backslashes, or both. Alexis.