From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Emanuel Berg Newsgroups: gmane.emacs.help Subject: Re: Lookarounds and recursion in Emacs regexes Date: Sat, 04 Feb 2023 23:44:57 +0100 Message-ID: <87h6w1jbiu.fsf@dataswamp.org> References: <87h6wbeti3.fsf@mbork.pl> <877cx7n5an.fsf@dataswamp.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19815"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: help-gnu-emacs@gnu.org Cancel-Lock: sha1:IdyDFvV5bKWviaGze0okz74Zmxk= Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sun Feb 05 14:17:17 2023 Return-path: Envelope-to: geh-help-gnu-emacs@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 1pOetR-0004wn-C2 for geh-help-gnu-emacs@m.gmane-mx.org; Sun, 05 Feb 2023 14:17:17 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pOetN-00052z-17; Sun, 05 Feb 2023 08:17:13 -0500 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 1pORHT-0000bG-1I for help-gnu-emacs@gnu.org; Sat, 04 Feb 2023 17:45:15 -0500 Original-Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pORHQ-0002PZ-5X for help-gnu-emacs@gnu.org; Sat, 04 Feb 2023 17:45:10 -0500 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1pORHM-0008eX-N3 for help-gnu-emacs@gnu.org; Sat, 04 Feb 2023 23:45:04 +0100 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: help-gnu-emacs@gnu.org Mail-Copies-To: never Received-SPF: pass client-ip=116.202.254.214; envelope-from=geh-help-gnu-emacs@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -15 X-Spam_score: -1.6 X-Spam_bar: - X-Spam_report: (-1.6 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.25, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sun, 05 Feb 2023 08:17:07 -0500 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:142612 Archived-At: Stefan Monnier via Users list for the GNU Emacs text editor wrote: >> [re: Elisp, I heard GIMP once used Lisp as its >> configuration/extension language, only at some point switched >> to Python for that. That's not gonna happen to Emacs, is it? >> *runs away*] > > There's a common confusion that ELisp is some kind of > extension language for Emacs. That's not quite true. > ELisp is an *implementation* language of Emacs (along with > C for the other half). Okay, so Emacs is implementation, configuration _and_ extension. C is to most implementation and that's it and unawarely so probably most often, but with dynamic modules, it can be extension as well, I suppose it could be configuration as well but again in practice who does that and what benefit would that be ... Or am I wrong? > It doesn't prevent adding other extension languages, nor > even does it necessarily prevent changing the implementation > language to another one in theory. I know! > But in practice it has discouraged most attempts to provide > another language (except arguably for the "statically scoped > dialect of ELisp", because its interoperability with the > original ELisp was sufficiently smooth). But didn't you have the idea of adding a third layer language, don't remember what that idea was, the language was to be created for this purpose so a brand new one was discussed, maybe it stopped at discussions? What would have been the idea with that? People say Emacs Lisp is slow but to me it feels pretty fast? But I think there are other problems - lack of standard libraries - a lot of functions everywhere that do similar things, do-something do-the-same-buffer do-the-same-region do-the-same-no-properties etc. Too much looking up stuff all the time is a problem. Also too long words all the time ... reduce typing to increase development speed. so start -> beg, `require' -> req, `expt' -> **, all that, also make all final args of functions where nil makes sense optional so trailing nils can be pruned, just reduce typing if one cares about speed. Its biggest problem? It's too sexy for it's shirt! -- underground experts united https://dataswamp.org/~incal