From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: "Perry E. Metzger" Newsgroups: gmane.emacs.devel Subject: Re: [Emacs-diffs] master 938d252 4/4: Make regex matching reentrant; update syntax during match Date: Mon, 18 Jun 2018 11:59:41 -0400 Message-ID: <20180618115941.4f22a9d3@jabberwock.cb.piermont.com> References: <20180616204650.8423.73499@vcs0.savannah.gnu.org> <20180616204653.86AFC203CB@vcs0.savannah.gnu.org> <04e89d2beffedcc102b811863910c1ec.squirrel@dancol.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1529337478 28512 195.159.176.226 (18 Jun 2018 15:57:58 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 18 Jun 2018 15:57:58 +0000 (UTC) Cc: Stefan Monnier , emacs-devel@gnu.org To: "Daniel Colascione" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jun 18 17:57:54 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fUwXR-0007Ku-Bh for ged-emacs-devel@m.gmane.org; Mon, 18 Jun 2018 17:57:53 +0200 Original-Received: from localhost ([::1]:35497 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fUwZY-00082R-Ft for ged-emacs-devel@m.gmane.org; Mon, 18 Jun 2018 12:00:04 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36988) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fUwZM-00081I-Az for emacs-devel@gnu.org; Mon, 18 Jun 2018 11:59:53 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fUwZJ-0004Bu-2m for emacs-devel@gnu.org; Mon, 18 Jun 2018 11:59:52 -0400 Original-Received: from hacklheber.piermont.com ([166.84.7.14]:54746) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fUwZI-00049E-Ut for emacs-devel@gnu.org; Mon, 18 Jun 2018 11:59:49 -0400 Original-Received: from snark.cb.piermont.com (localhost [127.0.0.1]) by hacklheber.piermont.com (Postfix) with ESMTP id 56F2985; Mon, 18 Jun 2018 11:59:41 -0400 (EDT) Original-Received: from jabberwock.cb.piermont.com (jabberwock.cb.piermont.com [10.160.2.107]) by snark.cb.piermont.com (Postfix) with ESMTP id 3A9922DEC61; Mon, 18 Jun 2018 11:59:41 -0400 (EDT) In-Reply-To: <04e89d2beffedcc102b811863910c1ec.squirrel@dancol.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 166.84.7.14 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:226462 Archived-At: On Sun, 17 Jun 2018 11:51:33 -0700 "Daniel Colascione" wrote: > But anyway, I think the regex code needs a major overhaul. I was > actually thinking about forking and vendoring RE2. Granted, having > done that, you'd need a C++ compiler to build Emacs, but it's > probably one of the better actively-maintained DFA-based regex > engines around. I think needing C++ makes this less than the most obvious choice. I think the right thing would be to use TRE if we could get Ville Laurikari to let someone else be the maintainer. Sadly right now it seems unmaintained and has been for years, but it's fast, complete, and has the ability to handle things like gap buffers. This would also give Emacs access to an approximate match facility, which would be a very neat thing. I often would like to do approximate searches, and there's no way to do that right now. TRE would let us do it. But again, that would be contingent on someone else taking over maintenance and fixing the backlog of issues it has right now. Perry -- Perry E. Metzger perry@piermont.com