From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Bob Rogers Newsgroups: gmane.emacs.devel Subject: Re: cl-loop and plists vs alists Date: Mon, 26 Dec 2022 13:06:29 -0800 Message-ID: <25514.3285.897862.943321@orion.rgrjr.com> References: <86o7s3lsnx.fsf@mail.linkov.net> <86bknx8783.fsf@mail.linkov.net> <837cylapt4.fsf@gnu.org> <83wn6kamwr.fsf@gnu.org> <83len0aldq.fsf@gnu.org> <83k02kadbv.fsf@gnu.org> <83a63fap35.fsf@gnu.org> <83bknu8tmo.fsf@gnu.org> <18E95AC5-1FFC-4025-B804-7D70DDB1BD75@gmail.com> <87ili1f5vb.fsf@posteo.net> <87h6xjm3au.fsf_-_@posteo.net> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="17408"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Philip Kaludercic , emacs-devel To: =?iso-8859-1?Q?Jo=E3o_T=E1vora?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Dec 26 22:07:23 2022 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 1p9ugs-0004JG-B8 for ged-emacs-devel@m.gmane-mx.org; Mon, 26 Dec 2022 22:07:22 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p9ugC-0003ya-SJ; Mon, 26 Dec 2022 16:06:40 -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 1p9ugA-0003yC-NB for emacs-devel@gnu.org; Mon, 26 Dec 2022 16:06:38 -0500 Original-Received: from mail-pg1-x531.google.com ([2607:f8b0:4864:20::531]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p9ug5-0004OK-Pr for emacs-devel@gnu.org; Mon, 26 Dec 2022 16:06:35 -0500 Original-Received: by mail-pg1-x531.google.com with SMTP id 79so7702759pgf.11 for ; Mon, 26 Dec 2022 13:06:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rgrjr-com.20210112.gappssmtp.com; s=20210112; h=references:in-reply-to:subject:cc:to:date:message-id :content-transfer-encoding:mime-version:from:from:to:cc:subject:date :message-id:reply-to; bh=RqSUyClKbqJ1/y6qL9ZwX7esKgeRLCZ3rl4HRE1ug2A=; b=8Wa0Sdyuy6ddV22ZOfhhh6fYjY5JSMb5IntxXxAYFshtaAyvMpD2Lq6g/6B9L1usQG V2pzpC1X68jdEr6V+PUU5ak+avzRBMtmncG4TwVi8ZAL2dNoj/cjcCgf3NBe3Jss195V zg+nAoQScMuiZsZrBfmr65zMrhfgkvwPX7sF21Kl5rhasL5xtQwOvg1XKh6lGIRxQ6Aj /kdVfGYtJ5++yo2zHMCGG0i/lgGeOhp1Jg1ZA+Y21gEEDLTB/zGvvcfJFpr+itqQwZkL rzMSNI/tTDZVXIS8G1GiewHwOm4/gnHJjO1iunyNdYMlplnx0L0FX17hlh9O/UZtqZLV uiKA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=references:in-reply-to:subject:cc:to:date:message-id :content-transfer-encoding:mime-version:from:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=RqSUyClKbqJ1/y6qL9ZwX7esKgeRLCZ3rl4HRE1ug2A=; b=wtXU5foKFUM4PFHLayo/jOmeFmJ02ByrXEjlplcKKPg7478lJL8fM95fkqZeKi+1Wp bHFrPwRuNuiBEFdsLBu8eG6SIAtbsU5GIiu/X8q3+RJDM1DkeH41Vu5piVVnASoSwS07 lDOqu+P53mbQlZ67Qkg+yCQuaoSN/yk7k6LECcpgYAjOs5lhxvA8GFazw0sDzbNcav4Q TsewRacty9Yt0tuUa0kdP8YdSoJ5pqrY+gTzZdlJUdiiUO/2fi4tU3lnNB4PZFyB0vJg Cv6LKZMdbLHtaA8LCHTzS9IcHETiNre7ogJ6qLt5OeW43OEsUtwtne0QflnsNNB3DTvd 2NTw== X-Gm-Message-State: AFqh2krhOD1ykMy5MYweQOPxOZLKN44NjqZIdwaW+qk9jWQAyE2xeqt3 cmWJ2fqztn+9UBSchCMDuyhFbg== X-Google-Smtp-Source: AMrXdXvxtDbeoKuTYXvoIKpVNThZfcjTTlPI9TrRSgH3jq/uV9CA0WO/L4JJ8UV+E4SOlzueGAikeA== X-Received: by 2002:a62:184c:0:b0:581:1e00:beeb with SMTP id 73-20020a62184c000000b005811e00beebmr6359560pfy.15.1672088792053; Mon, 26 Dec 2022 13:06:32 -0800 (PST) Original-Received: from orion.rgrjr.com ([2600:1700:7c2c:e000::f]) by smtp.gmail.com with ESMTPSA id l66-20020a622545000000b00571bdf45888sm7253370pfl.154.2022.12.26.13.06.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Dec 2022 13:06:31 -0800 (PST) X-Google-Original-From: Bob Rogers In-Reply-To: X-Mailer: VM 8.2.0b under 30.0.50 (x86_64-pc-linux-gnu) Received-SPF: none client-ip=2607:f8b0:4864:20::531; envelope-from=rogers@rgrjr.com; helo=mail-pg1-x531.google.com X-Spam_score_int: -29 X-Spam_score: -3.0 X-Spam_bar: --- X-Spam_report: (-3.0 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, NICE_REPLY_A=-1.147, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=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:301941 Archived-At: From: João Távora Date: Mon, 26 Dec 2022 00:35:58 +0000 On Mon, Dec 26, 2022 at 12:11 AM Philip Kaludercic wrote: . . . > Plists are "harder" to iterate, because your > steps are cddrs which is an unusual way to run over a data structure. > Same applies to adding and removing associations from a plist. The > advantage is that they are easier to write. IMO the major advantage is that you can use them for lambda lists. Indeed, when I was hacking Lisp in the 80's and early 90's, by far the most common application of iterating through plists that I saw was processing &key parameters in &rest lists. (This was the only time I would use loop, albeit grudgingly.) Otherwise, given a free hand, an alist was the better data structure choice. -- Bob Rogers http://www.rgrjr.com/