From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Newsgroups: gmane.emacs.help Subject: Re: let-alist can't deal with the keys which includes spaces. Date: Tue, 20 Jul 2021 19:08:29 +0200 Message-ID: <20210720170828.GC14831@tuxteam.de> References: <87h7gpyp51.fsf@omarpolo.com> <20210720162013.GB14831@tuxteam.de> <87czrdylk6.fsf@zoho.eu> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="sHrvAb52M6C8blB9" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="5556"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/1.5.21 (2010-09-15) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Tue Jul 20 19:09:00 2021 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 1m5tEo-00019x-VQ for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 20 Jul 2021 19:08:58 +0200 Original-Received: from localhost ([::1]:38202 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m5tEn-0007cB-IA for geh-help-gnu-emacs@m.gmane-mx.org; Tue, 20 Jul 2021 13:08:57 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:50414) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m5tEP-0007c0-ON for help-gnu-emacs@gnu.org; Tue, 20 Jul 2021 13:08:33 -0400 Original-Received: from mail.tuxteam.de ([5.199.139.25]:33791) by eggs.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.90_1) (envelope-from ) id 1m5tEN-0004di-SF for help-gnu-emacs@gnu.org; Tue, 20 Jul 2021 13:08:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tuxteam.de; s=mail; h=From:In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject:To:Date; bh=M2oFiKu96i84imWQa3fmqgV0LXE5Ihg1KgSwK+/p308=; b=RK8btUP64Yks3quEWf/2e0qug9pqLB4YynPhl2K/krpdL4byUJPY73dw848eRnmnR1FjPOfECm6CE7pWYzzhyBfey2OnqTDXfcYc9sGStFnL0Y46LDLCRaOPDsT1bL8mOYRrQ6aZBOKH3eeDEXcmqAB2x7SxFqDR2eATfD7+/t9aqIZh1Ld/NgxgWStqTOa9ta9DcAFN0xQ/arGP7PQoQ3DTALS+L+EFAGANpuwHAyKDcpavOnhdDRtSCe58aPbN8dYPsO9vobFX6gFzx9MdKV8i/4Dkld0wRoC8X3CnzlH4OvhtjMy+TMTCTFYy/RT+EF+RIMZfjRJzc+sYcuRy+Q==; Original-Received: from tomas by mail.tuxteam.de with local (Exim 4.80) (envelope-from ) id 1m5tEL-000587-3p for help-gnu-emacs@gnu.org; Tue, 20 Jul 2021 19:08:29 +0200 Content-Disposition: inline In-Reply-To: <87czrdylk6.fsf@zoho.eu> Received-SPF: pass client-ip=5.199.139.25; envelope-from=tomas@tuxteam.de; helo=mail.tuxteam.de 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 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" Xref: news.gmane.io gmane.emacs.help:131887 Archived-At: --sHrvAb52M6C8blB9 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jul 20, 2021 at 06:52:41PM +0200, Emanuel Berg via Users list for t= he GNU Emacs text editor wrote: > tomas wrote: >=20 > > yes, and `let-alist' expects symbols as keys. >=20 > Uhm, what is the purpose with `let-alist' and "dotted symbols" > to begin with? `let-alist' is just a handy way to destructure an alist. Assume we have (setq colours '((poppy . red) (cornflower . blue) (sunflower . yellow))) Instead of doing (let ((rose (alist-get 'rose colours)) (cornflower (alist-get 'cornflower colours)) (sunflower (alist-get 'sunflower colours))) ;; do something with rose, cornflower... ) you just do (let-alist colours ;; do something with .rose, .cornflower... ) which is kind of less repetitive. The dots are part of the symbol name, they aren't special Lisp syntax. Probably they are there to help avoiding collisions with your variable names. If you don't name your variables `.foo', all will work out nicely. Cheers - t --sHrvAb52M6C8blB9 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEYEARECAAYFAmD3AwwACgkQBcgs9XrR2kYI5wCbBINfJGzacIfIiFcfTm63zg80 jDsAn2vw+WYIkG1adDFYX3oKN/Ns9Q8e =k4mj -----END PGP SIGNATURE----- --sHrvAb52M6C8blB9--