From owner-freebsd-hackers@freebsd.org Sun Apr 16 20:43:32 2017 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5B0D8D41909 for ; Sun, 16 Apr 2017 20:43:32 +0000 (UTC) (envelope-from joerg@bec.de) Received: from relay7-d.mail.gandi.net (relay7-d.mail.gandi.net [IPv6:2001:4b98:c:538::200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1F9AC10FC for ; Sun, 16 Apr 2017 20:43:31 +0000 (UTC) (envelope-from joerg@bec.de) Received: from relay3-d.mail.gandi.net (relay3-d.mail.gandi.net [217.70.183.195]) by relay7-d.mail.gandi.net (Postfix) with ESMTPS id D9DF31155 for ; Sun, 16 Apr 2017 22:43:28 +0200 (CEST) Received: from britannica.bec.de (p200300D2ABD4B4004639C4FFFE599710.dip0.t-ipconnect.de [IPv6:2003:d2:abd4:b400:4639:c4ff:fe59:9710]) (Authenticated sender: joerg@bec.de) by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id 917F3A80BE for ; Sun, 16 Apr 2017 22:43:28 +0200 (CEST) Date: Sun, 16 Apr 2017 22:43:26 +0200 From: Joerg Sonnenberger To: freebsd-hackers@freebsd.org Subject: Re: Replacing libgnuregex Message-ID: <20170416204326.GA24950@britannica.bec.de> Mail-Followup-To: freebsd-hackers@freebsd.org References: <20170416134756.GA88424@stack.nl> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170416134756.GA88424@stack.nl> User-Agent: Mutt/1.7.1 (2016-10-04) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Apr 2017 20:43:32 -0000 On Sun, Apr 16, 2017 at 03:47:56PM +0200, Jilles Tjoelker wrote: > On Tue, Apr 11, 2017 at 03:20:58PM -0500, Kyle Evans wrote: > > On the other hand, I think I could fairly easily implement most of these > > into libc/regex. Here's a summary of what this option entails adding to > > libc/regex, from what I've found: > > > [snip] > > * Add backreferences (\1 through \9) to EREs > > [snip] > > Adding this enforces that EREs, like BREs, may sometimes require > exponential time to match. I would prefer to avoid that. The Spencer RE doesn't need backreferences to be exponential, but I certainly agree that adding support for them makes it more difficult to change to a better RE implementation later. Joerg