From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nathan Trapuzzano Newsgroups: gmane.emacs.devel Subject: Re: Double unquote/unquote-splicing Date: Mon, 04 Nov 2013 13:11:26 -0500 Message-ID: <87vc08dokx.fsf@nbtrap.com> References: <87wqko6z8g.fsf@nbtrap.com> <874n7sf3pi.fsf@nbtrap.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1383588722 17417 80.91.229.3 (4 Nov 2013 18:12:02 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 4 Nov 2013 18:12:02 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Nov 04 19:12:07 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VdOdD-0005fJ-0m for ged-emacs-devel@m.gmane.org; Mon, 04 Nov 2013 19:12:07 +0100 Original-Received: from localhost ([::1]:51369 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VdOdC-0007Ok-Ih for ged-emacs-devel@m.gmane.org; Mon, 04 Nov 2013 13:12:06 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48379) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VdOd4-0007Of-LW for emacs-devel@gnu.org; Mon, 04 Nov 2013 13:12:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VdOcx-0004qv-QJ for emacs-devel@gnu.org; Mon, 04 Nov 2013 13:11:58 -0500 Original-Received: from oproxy13-pub.mail.unifiedlayer.com ([69.89.16.30]:37697) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1VdOcx-0004qB-Gg for emacs-devel@gnu.org; Mon, 04 Nov 2013 13:11:51 -0500 Original-Received: (qmail 13632 invoked by uid 0); 4 Nov 2013 18:11:27 -0000 Original-Received: from unknown (HELO host393.hostmonster.com) (66.147.240.193) by oproxy13.mail.unifiedlayer.com with SMTP; 4 Nov 2013 18:11:27 -0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=nbtrap.com; s=default; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date:References:Subject:Cc:To:From; bh=JTicHoFbyWiuUH3GFY8sTqW2WJbCnm71CrKrk8+c+qE=; b=UzqLgetsfi7ICg4OYJB/nz+nd4yhRhszM7Wsle+Pplgs4AUq5CQSn+qDXipCujJZOhg0QPEmxt3iPcBFNRkN+yGzyMCU8ZXHVwdQ7s7C/M/Xp1MG211nVCV9J/BjK/md; Original-Received: from [50.90.253.209] (port=48919 helo=Nathan-GNU) by host393.hostmonster.com with esmtpsa (TLSv1:CAMELLIA128-SHA:128) (Exim 4.80) (envelope-from ) id 1VdOcZ-0006OT-Fy; Mon, 04 Nov 2013 11:11:27 -0700 In-Reply-To: <874n7sf3pi.fsf@nbtrap.com> (Nathan Trapuzzano's message of "Mon, 04 Nov 2013 12:59:21 -0500") User-Agent: Gnus/5.130007 (Ma Gnus v0.7) Emacs/24.3.50 (gnu/linux) X-Identified-User: {1585:host393.hostmonster.com:nbtrapco:nbtrap.com} {sentby:smtp auth 50.90.253.209 authed with nbtrap@nbtrap.com} X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 69.89.16.30 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:164937 Archived-At: Nathan Trapuzzano writes: > This is incorrect. ``(a ,,@x) where x=(1 2 3) would evaluate to > (\` (a (\, 1) (\, 2) (\, 3))). The first comma in ,,@ has the effect of > being applied member-wise to each element spliced out of ,@. Cf. CLHS > `Backquote' (http://www.lispworks.com/documentation/HyperSpec/Body/02_df.htm). By the way, like in Common Lisp, what backquote/unquote/unquote-splicing expand to is not defined. What's defined is the effect of their evaluation, so what I presented here doesn't _have_ to be the way ,,@ works. For example, in Elisp, the expression in question may very well expand to (\` (a (\, 1 2 3))) (as you say) so long as it is semantically equivalent to (\` (a (\, 1) (\, 2) (\, 3))).