From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Handling extensions of programming languages (Perl) Date: Mon, 22 Mar 2021 14:27:41 -0400 Message-ID: References: <87o8ff560t.fsf@hajtower> <87im5lhi6i.fsf@rfc20.org> <87r1k94cnx.fsf@hajtower> <20a4ef1c-beaf-1d63-b984-12be9a856c86@gmail.com> <87h7l43fa1.fsf@hajtower> <87blbc33tm.fsf@hajtower> <878s6fs2kq.fsf_-_@hajtower> <87y2efqek7.fsf@hajtower> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3193"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: haj@posteo.de (Harald =?windows-1252?Q?J=F6rg?=) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Mar 22 19:28:51 2021 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 1lOPIJ-0000kJ-Ic for ged-emacs-devel@m.gmane-mx.org; Mon, 22 Mar 2021 19:28:51 +0100 Original-Received: from localhost ([::1]:38054 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lOPII-0002f2-Jg for ged-emacs-devel@m.gmane-mx.org; Mon, 22 Mar 2021 14:28:50 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:32836) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lOPHK-0001xN-2b for emacs-devel@gnu.org; Mon, 22 Mar 2021 14:27:51 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:20360) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lOPHG-0007Hs-PI for emacs-devel@gnu.org; Mon, 22 Mar 2021 14:27:49 -0400 Original-Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 5203880A59; Mon, 22 Mar 2021 14:27:45 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id BDF06805EF; Mon, 22 Mar 2021 14:27:43 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1616437663; bh=qNjbpbm5AOf9h6Rju+Ll49HYs7u6KMqsR6IPp+yhGX8=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=TcomTu2HO1mE1VXzxxscjl8LMlG/8RDkX+bobhidsTz0m0lcWPcRHF3HMnvTBuoV6 y9tVqNmgHbPy1OKiuIF/OSXWvcQUxjWdxAEAwOEZRuno7PSP4vCpXDbDA+Lp4tSN6C 5b9nusJKrHUZVLneMQhmYwDLcQgAeIquneMdcyGiUeilXm0liobXow/qCDgAEsxwj0 US7WLMabCJs1dWnbRKxCcs2F9lhSSdDJXAhGsstGKBwwWtUdPv+PuayCSh3Z1/Nwzc P0Zao6ErTDTXORTNuRHqKr04MHotorNgqELOhHfzIMoZFdfpRMd0F7kkQfeoNqQAvS 8I11GUGU5fdRA== Original-Received: from alfajor (unknown [216.154.43.249]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 3A0A2120232; Mon, 22 Mar 2021 14:27:43 -0400 (EDT) In-Reply-To: <87y2efqek7.fsf@hajtower> ("Harald =?windows-1252?Q?J=F6rg=22?= =?windows-1252?Q?'s?= message of "Mon, 22 Mar 2021 18:32:56 +0100") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, 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.23 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" Xref: news.gmane.io gmane.emacs.devel:266782 Archived-At: >> E.g. for an extension which doesn't collide with any other known Perl >> extension, you could imagine enabling it by default (and maybe even >> forego offering a way to disable it). > I would prefer this behavior (not being able to disable it) for things > that come with new Perl versions, but not for extensions. I wasn't recommending any particular choice. Just mentioning what I would consider as acceptable. >> And as for where to put the code, it could be in a completely separate >> file, or directly in `perl-mode.el` (which `cperl-mode.el` could >> require: it's a mere 50kB compared to `cperl-mode.el`s 300kB). > I am leaning towards a completely separate file, but maybe not right > now. In both cases the adventurous users who're using cperl-mode > directly from the repository will then need to pick two files instead of > one. If, one day, cperl-mode is made available via ELPA, this should > not necessary require moving perl-mode to elpa as well. I don't see any problem with a :core `cperl-mode` package which comes bundled with its own version of `perl-mode.el` (nor would I find it problematic to export `perl-mode.el` into its own :core GNU ELPA package). > That was my first thought as well. But then, the declarators appear in > places where other languages have their types. [ I think you use a very restricted definition of "other languages" here. It's definitely not the case for most of the statically typed languages I've used, except for C. I'm thinking of OCaml, SML, Haskell, Agda, Coq, Modula-2, Pascal, Ada, ... ] Stefan