From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Helmut Eller Newsgroups: gmane.emacs.devel Subject: Re: rosie/libpexl library for regex pattern composition Date: Sun, 28 Jul 2024 09:08:06 +0200 Message-ID: <8734nudmeh.fsf@gmail.com> References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="4348"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: "emacs-devel@gnu.org" To: Danny McClanahan Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Jul 28 09:09:25 2024 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1sXy21-00012t-C1 for ged-emacs-devel@m.gmane-mx.org; Sun, 28 Jul 2024 09:09:25 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sXy0y-0002lS-07; Sun, 28 Jul 2024 03:08:20 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sXy0t-0002l6-7R for emacs-devel@gnu.org; Sun, 28 Jul 2024 03:08:15 -0400 Original-Received: from mail-ej1-x633.google.com ([2a00:1450:4864:20::633]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sXy0p-0007x1-OO for emacs-devel@gnu.org; Sun, 28 Jul 2024 03:08:13 -0400 Original-Received: by mail-ej1-x633.google.com with SMTP id a640c23a62f3a-a7a94478a4eso527143366b.1 for ; Sun, 28 Jul 2024 00:08:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1722150488; x=1722755288; darn=gnu.org; h=mime-version:user-agent:message-id:date:references:in-reply-to :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=14US8kfofS65W5zOjN95ekaV0+oddHNhQKsCK0o+OBA=; b=nUMdtea2UmGYiftDwW3g27tA9CIejLmmUodPwcjYv1cNdXOC+uXfu0pW2WEm0mIkvj UEY69lfYhPEIcHnQ0Z/eroB5ZK9F6gIzJPPUW9QGxZ7QHpxOuwt+9aTa5aKrIyNa5t50 XzohZzBOtvaO57e7SSFqPzZf3otXU8XTK/BpdUiBMtjhevo4QVK3DqKzB9lNL0s7l1uW tuCIbb4oJIVvO6iYGfLXeMAXKfxj+8pydP1DF59ADnxHm420X68g8NMTp7PcQt/eGejX Xoye3V08+zNtQA6RMLv/XbmSZFCibDCnkSMogtveV7BolBjz/EbaNMilX7vqM3c96jcI uMYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722150488; x=1722755288; h=mime-version:user-agent:message-id:date:references:in-reply-to :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=14US8kfofS65W5zOjN95ekaV0+oddHNhQKsCK0o+OBA=; b=JrT4FU9Tll1Nu8GzVFwpuLbGPi51uGS7T3urV3T88+MLF/eBkxj/YWMAElTwaO+rP9 e7m3ZQ+UXjrhYvkk44PKknrJGrP05TTgyW1PDOyYY8WrphnGBMGqC5l60pWF+N1OdGg3 pBg4WD4qxOekp/VNrlJq2zxloyjbNo0f2dEn1AFdzcwsbmH+06V2eeqZzVtS6W+cu58H 7k8S49aR7OxoL0OKnnMXcgAh0vpKnmCJI8t4E4UlcF5MnmbDJ/VcTbTvYfA5NzIaLmZe Ro0SBpHBdiMZTQp/YcZiSNWcsn3TsGcaTPUwdn6kWc2A88UkygmeQjwG3sQc89B8Nv9F 2Q0g== X-Gm-Message-State: AOJu0Yx1wVS4AE17yq/LhuqjinjXe4lvAQzW4nu3h1VEd1TylHjMpwzp GCYHecKMHWU46iBvJY18WgKNL9orfdYAbllM2aWqNXQ+ndfpu4Zsb13gzg== X-Google-Smtp-Source: AGHT+IExdLkL6MV77udNX2aa2tlFMg/DTITEwBmwyP5C8NQ7xnkXfFy2M3H5T0aebinCbP87tHo8mg== X-Received: by 2002:a17:907:1b27:b0:a7a:b18a:69 with SMTP id a640c23a62f3a-a7d3f86d18cmr371588266b.10.1722150487851; Sun, 28 Jul 2024 00:08:07 -0700 (PDT) Original-Received: from caladan (dialin-234199.rol.raiffeisen.net. [195.254.234.199]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a7acab23704sm356393566b.3.2024.07.28.00.08.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 28 Jul 2024 00:08:07 -0700 (PDT) In-Reply-To: (Danny McClanahan's message of "Sat, 27 Jul 2024 13:04:28 +0000") Received-SPF: pass client-ip=2a00:1450:4864:20::633; envelope-from=eller.helmut@gmail.com; helo=mail-ej1-x633.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:322154 Archived-At: On Sat, Jul 27 2024, Danny McClanahan wrote: > Rosie/PEXL's goals are explicitly focused more on maintainability than > sheer performance, so I'm thinking it might make sense to introduce > Rosie as a separate interface to the regex engine, while we can keep > the regex engine narrowly focused on patterns that we can more easily > optimize. AFAIU, Rosie is based on parsing expression grammars, i.e. it's not a regular language and it's in a different complexity class. I think it would be best for Emacs to provide an efficient C API for dynamic modules to buffer text with the explicit goal to support alternative regexp engines and parsing libraries. It seems that tree-sitter only needs a single function: treesit_read_buffer. If it works for tree-sitter, then maybe it's also good enough for Rosie. Helmut