From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=AWL,BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL, SPF_HELO_NONE,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 5530D1F4B4 for ; Sun, 11 Oct 2020 14:14:50 +0000 (UTC) Received: from localhost ([::1]:58614 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kRc7d-0006Pi-2E for normalperson@yhbt.net; Sun, 11 Oct 2020 10:14:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55680) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRc7a-0006OP-2t for bug-gnulib@gnu.org; Sun, 11 Oct 2020 10:14:46 -0400 Received: from mo4-p01-ob.smtp.rzone.de ([85.215.255.52]:17374) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRc7X-0006G0-TS for bug-gnulib@gnu.org; Sun, 11 Oct 2020 10:14:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1602425681; s=strato-dkim-0002; d=clisp.org; h=References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: X-RZG-CLASS-ID:X-RZG-AUTH:From:Subject:Sender; bh=Z0FEjSPbmHfPipn21Pal+TB/L6keepWM/HbUvfwYGts=; b=X9mf0LJ0qotWpbFhzsh2Hz9saR1GuLnieNR3MMNgQamO1SNho1x4GY6LJim4TNy8Tp VZzKg6D0IsoJgZlL3ebeVfuxppq+8NCuPnGVGqydKFaOHh7K60IQTq5+1sOJoYBR2Mv9 0GrMAanMR6OLNelbJ505zgRPjxxofNmzUNfcns1m0ax+yb6l4HhVlzgySpKEqVAJL2Dz gVHIEEs353/i6hPP4L33lZA2Zve2DORC84Erd+xBF53qdWyHuMNN0J+7KuMWVMLXBAJT mz2Eaz/pNpIbJG4M8qGuA0Qyn6+3pj1lFK4ox0eO24keEenwmLxBT352SLTppN9Sfm5o KP+g== X-RZG-AUTH: ":Ln4Re0+Ic/6oZXR1YgKryK8brlshOcZlIWs+iCP5vnk6shH+AHjwLuWOGaf0yJVW" X-RZG-CLASS-ID: mo00 Received: from bruno.haible.de by smtp.strato.de (RZmta 47.2.1 DYNA|AUTH) with ESMTPSA id R01daaw9BEEet0o (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (curve X9_62_prime256v1 with 256 ECDH bits, eq. 3072 bits RSA)) (Client did not present a certificate); Sun, 11 Oct 2020 16:14:40 +0200 (CEST) From: Bruno Haible To: Marc =?ISO-8859-1?Q?Nieper=2DWi=DFkirchen?= Subject: Re: terminology Date: Sun, 11 Oct 2020 16:14:38 +0200 Message-ID: <4662774.P3WCRGYPx6@omega> User-Agent: KMail/5.1.3 (Linux/4.4.0-189-generic; KDE/5.18.0; x86_64; ; ) In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Received-SPF: none client-ip=85.215.255.52; envelope-from=bruno@clisp.org; helo=mo4-p01-ob.smtp.rzone.de X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/11 10:14:41 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] 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, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: bug-gnulib@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Gnulib discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Paul Eggert , bug-gnulib@gnu.org Errors-To: bug-gnulib-bounces+normalperson=yhbt.net@gnu.org Sender: "bug-gnulib" Hi Marc, > I have attached an improved version of the HAMT module to this email. How about terminology: "delete" vs. "remove"? In C++ the verb "delete" is more or less the same as "free": It means "deallocate" and "free memory". Likewise in some C APIs, e.g. pthread_key_delete. In this sense, 'hamt_delete' is triggering the wrong associations. How about renaming 'hamt_remove'? Deleting an entry from a hash table or HAMT does not always mean to delete the object that the entry references. The Java collections [1], C# collections [2], Python collections [3] all use the verb "remove". Yes, we still have hash_delete (in module 'hash') and 'argz_delete' (in module 'argz'); these are very old modules. Bruno [1] https://docs.oracle.com/javase/7/docs/api/java/util/Set.html [2] https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.hashset-1 [3] https://docs.python.org/3/library/stdtypes.html#set