comp.lang.ada
 help / color / mirror / Atom feed
From: Emmanuel Briot <briot.emmanuel@gmail.com>
Subject: Re: Easiest way to use redular expressions?
Date: Sun, 27 Dec 2020 03:14:47 -0800 (PST)	[thread overview]
Message-ID: <dd86de7d-c7fa-4e00-920f-a8aa910f5457n@googlegroups.com> (raw)
In-Reply-To: <rs9h30$g8h$1@dont-email.me>

On Sunday, December 27, 2020 at 9:36:51 AM UTC+1, J-P. Rosen wrote:
> AdaControl uses Gnat.Regpat, and is quite happy with it... 

GNAT.Regpat is a package I wrote 18 years ago or so (time flies..), basically manually translating C code from the Perl implementation of regular expressions.
Nowadays, I think it would be better to write a small binding to the pcre library (which has quite a simple API, so the binding should not be too hard). This will
provide much better performance, support for unicode, and a host of regexp features that are not supported by GNAT.Regpat.

Never did that while I was working for AdaCore because we would have ended up with too many regexp packages (there is also GNAT.Regexp, which is very
efficient but limited in features because it is based on a definite state machine).

I think libpcre might even be distributed with gcc nowadays, although I did not double-check so might be wrong.

This binding would be a nice small project for someone who wants to get started with writing Ada bindings

Emmanuel

  reply	other threads:[~2020-12-27 11:14 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-27  8:20 Easiest way to use redular expressions? reinert
2020-12-27  8:36 ` J-P. Rosen
2020-12-27 11:14   ` Emmanuel Briot [this message]
2020-12-27 20:31     ` oliverm...@gmail.com
2020-12-28  8:01       ` Per Sandberg
2020-12-28 13:58         ` Maxim Reznik
2020-12-28 21:07 ` Jeffrey R. Carter
2020-12-31 10:29   ` reinert
2021-01-05  1:31 ` Shark8
2021-01-05  9:27   ` Dmitry A. Kazakov
2021-01-05 10:46     ` Paul Rubin
2021-01-05 11:20       ` Dmitry A. Kazakov
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox