Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ncar!ames!think!barmar From: barmar@think.COM (Barry Margolin) Newsgroups: comp.lang.lisp Subject: Re: Object in form's function position. Message-ID: <37191@think.UUCP> Date: 8 Mar 89 07:12:06 GMT References: Sender: news@think.UUCP Reply-To: barmar@kulla.think.com.UUCP (Barry Margolin) Distribution: usa Organization: Thinking Machines Corporation, Cambridge MA, USA Lines: 26 In article brister@td2cad.intel.com (James Brister) writes: >If the first element is not a symbol then only a lambda expression is legal >(right?) According to CLtL the lambda expression is treated as the name of >a function and isn't evaluated--which wouldn't be meaningful. > >The question. What about the language prohibits this? Nothing about the language prevented it from being included. It was an arbitrary decision by the designers of Common Lisp. Common Lisp is mainly descended from MacLisp and Zetalisp, and they didn't include this feature (actually, MacLisp would do it, but the compiler would print a warning). The feeling among much of the Common Lisp community is that it is appropriate to specially notate use of computed functions. Hence, instead of doing ((foo) args) you must do (funcall (foo) args) Barry Margolin Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar