From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.devel Subject: Re: Naming guidelines for ELPA packages Date: Thu, 18 May 2023 20:49:02 -0700 Message-ID: References: <87ttwjbfqq.fsf@gmail.com> <83y1lv5qe9.fsf@gnu.org> <0c04d76f-cca9-8a33-14fe-b9ad96a2b9aa@gmail.com> <87ednjicc0.fsf@posteo.net> <99eafa86-f7fc-8386-cdb4-a9fd706a42a3@gmail.com> <87ttwehfn3.fsf@posteo.net> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="38771"; mail-complaints-to="usenet@ciao.gmane.io" Cc: rms@gnu.org, eliz@gnu.org, relekarpayas@gmail.com, susam.pal@gmail.com, emacs-devel@gnu.org To: Philip Kaludercic Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri May 19 05:49:55 2023 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 1pzr7r-0009zn-5w for ged-emacs-devel@m.gmane-mx.org; Fri, 19 May 2023 05:49:55 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pzr7A-0000fl-A4; Thu, 18 May 2023 23:49:12 -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 1pzr77-0000fa-7H for emacs-devel@gnu.org; Thu, 18 May 2023 23:49:09 -0400 Original-Received: from mail-pl1-x62f.google.com ([2607:f8b0:4864:20::62f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pzr74-0003eG-AJ; Thu, 18 May 2023 23:49:07 -0400 Original-Received: by mail-pl1-x62f.google.com with SMTP id d9443c01a7336-1ae851f2a7dso531315ad.0; Thu, 18 May 2023 20:49:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1684468144; x=1687060144; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=BfZeNwlNUlsUus7HGsJd+B33C6RNzg8G3MIrf1Usl2Y=; b=c75+R6QUeM4oprsX5ZZiqtsPTbLuF7ULygx46BM6/dgxIxxd6OeT5WELluMYIi0OvL dh+jLc+QVHHZA1Q6V4pJWLnfP/gLqeQ0mMQwkCLWMyMDUOI1Ivr7rV1Upe/1YJExCBIv SWD+OjBJdsJProjKX+ZfdXcknZ5SZQOlZ+BAFGDepreDDLTu3fMWaLrguZOntKIg/H5D ILiYWpoZaTjMfIHzkTHONrVp/AP2G0tpJCZgvKalDbXdK6shyt+CLC8DKyM2WbLvI867 9Mig7ecgTqo0/VLxGjUQCbNpTTQMKlVlEsGYFVk7ieP1H67eEenmeJ6Js9xf6srNL472 fCIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684468144; x=1687060144; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=BfZeNwlNUlsUus7HGsJd+B33C6RNzg8G3MIrf1Usl2Y=; b=MlPG+Mrr7b+izYV8s+swuwT/vKEui2GKD0ZuMx+k8JmXCF972xotzhMqy7PW+Ixl/J I+9Ixk3oHsXLrHC31e8eiqkDd+415xVzNW9rMgwddOmNav69M0JQsjftvgr+Cu9UGOcJ ZKGNF8Ln48buAMQdJZ3ACyOoJGQi/0hGnStAMJtLJFHjS9sgyVkHwV9ToCRYzdx3zK4D dWRjK9uctR+AKNsWlvfCcGyax9r2PL1xpsSVPMg2tlGxhc7J4DknB/evpX+3kmKBvHca NgMOP5oTh60Z5y+1S8rV37ynhq3Maj84SuxSq/2Zhs/WQmcgRNEzHlfxcg+cCx/uIuCL E3+Q== X-Gm-Message-State: AC+VfDx69+m7/8OA0fF0uBXEbb//rwtdmxXkZxeXboZGLWuDX/PaG5Bn oYo01S2omLk3CvgHnvnZpkmty9lgdZ4= X-Google-Smtp-Source: ACHHUZ44rgYea6nCzVNhNK7cA4MCj09E/4VCq6KyWWrN3xl0kvLwyU3CRDNHRiEID8ysV/8YaXp6sg== X-Received: by 2002:a17:902:778c:b0:19c:3d78:6a54 with SMTP id o12-20020a170902778c00b0019c3d786a54mr1155368pll.14.1684468144184; Thu, 18 May 2023 20:49:04 -0700 (PDT) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id y19-20020a170902ed5300b001a064282b11sm2242684plb.151.2023.05.18.20.49.02 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 18 May 2023 20:49:03 -0700 (PDT) Content-Language: en-US In-Reply-To: <87ttwehfn3.fsf@posteo.net> Received-SPF: pass client-ip=2607:f8b0:4864:20::62f; envelope-from=jporterbugs@gmail.com; helo=mail-pl1-x62f.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, T_SCC_BODY_TEXT_LINE=-0.01 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:306191 Archived-At: On 5/14/2023 12:33 PM, Philip Kaludercic wrote: > Jim Porter writes: > >> I think I need to adjust the passage a bit to emphasize that the >> Emacs/ELPA maintainers would *prefer* a simple and straightforward >> name like "gobject". ... > > That would sound acceptable to me. Ok, how about something like the following? I just expanded it a bit to provide more context and adjusted the wording slightly here and there (for example, these are now "recommendations" instead of "guidelines"). ---------------------------------------- Naming is hard. However, taking some time to choose a good name for your package will help make your package easier to find and to use. To assist package authors, here are some recommendations for choosing good Emacs package names. Package names should be: * Memorable: Aim for short, distinct names that users can easily recall. * Intuitive: Names don't need to fully describe a package, but they should at least provide a hint about what the package does. For example, suppose I've written a package that provides an interface between GObjects and Emacs Lisp, and named it "goeli". This isn't a very good name, since it's not easy to remember (users may find themselves asking, "Wait... was it 'goli' or 'goeli'?"), and it's nearly impossible to guess what it does from the name. After thinking about it some more, I have a flash of insight: I'll call it "goblin" (for _GOb_ject _L_isp _In_terface)! This is easy enough to remember, but it's still not intuitive. Perhaps the best name for a package like this would simply be "gobject". That's both memorable *and* intuitive, not to mention being as straightforward as you can get. If possible, the ELPA maintainers recommend that you choose a name like this. However, suppose that at this point, I find myself disappointed: while "gobject" is a thoroughly practical name, I just don't want to give up the name "goblin". Instead, I could opt for a compromise: I'll still use "Goblin" when documenting the package and prefix names in my code with "goblin-", but I decide to submit it to GNU ELPA as "goblin-gobject". While this isn't as concise as "gobject", it does let the user know right away that this package has something to do with GObjects.