From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Barry Margolin Newsgroups: gmane.emacs.help Subject: Re: Refer to List of Arguments in Emacs Lisp Function Date: Thu, 13 Nov 2014 14:23:06 -0500 Organization: A noiseless patient Spider Message-ID: References: NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1415906731 7233 80.91.229.3 (13 Nov 2014 19:25:31 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 13 Nov 2014 19:25:31 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Nov 13 20:25:25 2014 Return-path: Envelope-to: geh-help-gnu-emacs@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 1Xp01E-0004j8-T7 for geh-help-gnu-emacs@m.gmane.org; Thu, 13 Nov 2014 20:25:25 +0100 Original-Received: from localhost ([::1]:33595 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xp01E-00014t-GD for geh-help-gnu-emacs@m.gmane.org; Thu, 13 Nov 2014 14:25:24 -0500 Original-Path: usenet.stanford.edu!news.kjsl.com!feeder.erje.net!eu.feeder.erje.net!eternal-september.org!feeder.eternal-september.org!mx02.eternal-september.org!barmar.motzarella.org!.POSTED!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 38 Injection-Info: barmar.motzarella.org; posting-host="2be9e9f5dd9af768b8861af71b85fc28"; logging-data="15763"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18uqv/m3ts3yQ8+QCyiAI+J" User-Agent: MT-NewsWatcher/3.5.3b3 (Intel Mac OS X) Cancel-Lock: sha1:zRZ8JBQdio4dd4SdF3DamgrUHRY= Original-Xref: usenet.stanford.edu gnu.emacs.help:208642 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:100919 Archived-At: In article , Marcin Borkowski wrote: > On 2014-11-13, at 09:02, Alexander Shukaev wrote: > > > Hello, > > > > I can't find whether there is a possibility to refer to the whole list of > > arguments of a function in Emacs Lisp. For example: > > > > (defun move (x y z) > > (apply do-move (args)) > > > > What I mean by (args) primitive here is a list (x y z). This use case > > illustrates usefulness of such a primitive, i.e. forwarding of arguments to > > another internal call without a need to rewrite them by hand. (length > > (args)) might be useful in some cases too. Is there anything like that in > > Emacs Lisp already? > > (defun move (&rest args) > (apply #'do-move args)) > > Note that (apply do-move (args)) would not work: first, you have to > quote do-move, second, (args) would try to call a function `args'. You don't have to quote do-move if it's a variable, e.g. in a context like: (let ((do-move (if something #'move1 #'move2))) (apply do-move (args))) And I think he was actually asking if there's a function that returns all the arguments, which you would calls as (args). -- Barry Margolin, barmar@alum.mit.edu Arlington, MA *** PLEASE post questions in newsgroups, not directly to me ***