From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: pjb@informatimago.com (Pascal J. Bourguignon) Newsgroups: gmane.emacs.help Subject: Re: Writing to buffer/file Date: Tue, 14 Sep 2010 19:46:03 +0200 Organization: Informatimago Message-ID: <874odsb4mc.fsf@kuiper.lan.informatimago.com> References: <87eicwfpjq.fsf@cecilia.trollope> <0388da54-19f4-4aaa-90c6-8f6262c4164f@c21g2000vba.googlegroups.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: dough.gmane.org 1291866190 31956 80.91.229.12 (9 Dec 2010 03:43:10 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 9 Dec 2010 03:43:10 +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 Dec 09 04:43:07 2010 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PQXPO-0003yk-GU for geh-help-gnu-emacs@m.gmane.org; Thu, 09 Dec 2010 04:43:06 +0100 Original-Received: from localhost ([127.0.0.1]:48071 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PQXPN-0002Yp-QX for geh-help-gnu-emacs@m.gmane.org; Wed, 08 Dec 2010 22:43:05 -0500 Original-Path: usenet.stanford.edu!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 50 Original-X-Trace: individual.net iRFXS+JI8AX/RCIiyI3/ZQ7tLcGTmL8GPzDcjy05XU+jl0okuX Cancel-Lock: sha1:MmE0NjNhMWJiZDhjODUwMzQ0ZDYzMWFiODQ3ZjI4NzhjYjIyNDdmYw== sha1:xGW7jhT7uUfqPxCBIZhaFMWMeDg= Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAQMAAABtzGvEAAAABlBMVEUAAAD///+l2Z/dAAAA oElEQVR4nK3OsRHCMAwF0O8YQufUNIQRGIAja9CxSA55AxZgFO4coMgYrEDDQZWPIlNAjwq9 033pbOBPtbXuB6PKNBn5gZkhGa86Z4x2wE67O+06WxGD/HCOGR0deY3f9Ijwwt7rNGNf6Oac l/GuZTF1wFGKiYYHKSFAkjIo1b6sCYS1sVmFhhhahKQssRjRT90ITWUk6vvK3RsPGs+M1RuR mV+hO/VvFAAAAABJRU5ErkJggg== X-Accept-Language: fr, es, en X-Disabled: X-No-Archive: no User-Agent: Gnus/5.101 (Gnus v5.10.10) Emacs/23.2 (gnu/linux) Original-Xref: usenet.stanford.edu gnu.emacs.help:181305 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:76570 Archived-At: naugiedoggie writes: > On Sep 14, 10:14 am, p...@informatimago.com (Pascal J. Bourguignon) > wrote: >> Michael Powe writes: > >> Even before that, you're misunderstanding the basic syntaxis for Lisp. > >> To call a function in lisp, we write a LIST, whose first element is the >> name of the function, and whose other elements are the arguments to >> that function. > > Every journey begins with a step. > >> To write a list, we write an open parenthesis, the elements of the list >> separated by spaces, and a close parenthesis. >> >> sexp ::= atom | '(' {sexp} ')' . >> >> function-call ::= '(' function-name {argument} ')' >> >>     (hash-to-list (myhash mylist)) >> >> Since myhash is not the name of a function the subexpression >> >>     (myhash mylist) > > Why doesn't it through an error? e.g. '(void-function myhash)'? Indeed this is what I would expect. Unless you've defined a function named myhash. > I took that hash-to-list function from Xah Lee's emacs pages. I did > change it to pass in the list variable. You just cannot in lisp pass 'variables' as argument to a function. You can only pass values. In lisp, arguments are always passed by value. (It happens that some values are references, and some values may be names (ie. symbols), but in both case, they're values, and it's the value that's passed to the function). So, since mylist is always bound to nil when you call hash-to-list, you always pass nil as second argument, and this is pointless. -- __Pascal Bourguignon__ http://www.informatimago.com/