From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Marius Vollmer Newsgroups: gmane.lisp.guile.devel Subject: Re: list versus apply Date: Mon, 06 Jun 2005 00:11:35 +0300 Message-ID: <87u0kcjypk.fsf@zagadka.de> References: <87mzrtgkbr.fsf@zip.com.au> <87k6l8yam0.fsf@zagadka.de> <87hdgck0an.fsf@zip.com.au> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1118005974 14130 80.91.229.2 (5 Jun 2005 21:12:54 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sun, 5 Jun 2005 21:12:54 +0000 (UTC) Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sun Jun 05 23:12:52 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1Df2PW-00026O-QC for guile-devel@m.gmane.org; Sun, 05 Jun 2005 23:11:59 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Df2Vg-0006YQ-UH for guile-devel@m.gmane.org; Sun, 05 Jun 2005 17:18:20 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Df2VW-0006WN-R7 for guile-devel@gnu.org; Sun, 05 Jun 2005 17:18:10 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Df2VV-0006Vy-RQ for guile-devel@gnu.org; Sun, 05 Jun 2005 17:18:10 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Df2VV-0006UH-I4 for guile-devel@gnu.org; Sun, 05 Jun 2005 17:18:09 -0400 Original-Received: from [213.243.153.35] (helo=smtp2.pp.htv.fi) by monty-python.gnu.org with esmtp (Exim 4.34) id 1Df2S8-0005uh-0D for guile-devel@gnu.org; Sun, 05 Jun 2005 17:14:40 -0400 Original-Received: from zagadka.ping.de (cs181072157.pp.htv.fi [82.181.72.157]) by smtp2.pp.htv.fi (Postfix) with SMTP id 2FC26296BB8 for ; Mon, 6 Jun 2005 00:11:35 +0300 (EEST) Original-Received: (qmail 2203 invoked by uid 1000); 5 Jun 2005 21:11:35 -0000 Original-To: guile-devel@gnu.org In-Reply-To: <87hdgck0an.fsf@zip.com.au> (Kevin Ryde's message of "Mon, 06 Jun 2005 06:37:20 +1000") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:5069 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:5069 Kevin Ryde writes: > Marius Vollmer writes: >> >> (define (list . args) args) >> >> is an acceptable definition of list. Is it not? > > Yep, because args is of course a fresh list when calling a lambda, but > it looks like primitives (C code) aren't called with a copied list > like that. Ahh, I see. R5RS says: "The value stored in the binding of the last variable will be a newly allocated list of the actual arguments..." I think I was confusing this with Common Lisp, which says: "The value of a rest parameter is permitted, but not required, to share structure with the last argument to apply." > (I guess having primitives like that makes some sense, only a few are > interested in modifying or re-using their input "rest" list.) We need to document this difference between Scheme functions and C primitives, I'd say. -- GPG: D5D4E405 - 2F9B BCCC 8527 692A 04E3 331E FAF8 226A D5D4 E405 _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel