Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!apple!snorkelwacker!mit-eddie!uw-beaver!fluke!ssc-vax!muehle From: muehle@ssc-vax.UUCP (Eric Muehle) Newsgroups: comp.lang.lisp Subject: Re: FUNCALL question Message-ID: <3156@ssc-vax.UUCP> Date: 2 Feb 90 18:53:54 GMT References: <3277@accuvax.nwu.edu> <1990Jan28.175437.19293@hellgate.utah.edu> <1666@skye.ed.ac.uk> <387@forsight.Jpl.Nasa.Gov> Organization: Boeing Aerospace & Electronics, Seattle WA Lines: 32 In-reply-to: gat@robotics.Jpl.Nasa.Gov's message of 2 Feb 90 01:04:13 GMT In article <387@forsight.Jpl.Nasa.Gov> gat@robotics.Jpl.Nasa.Gov (Erann Gat) writes: I stand corrected, and I apologize for my careless use of the terms symbol-value and symbol-function. Nevertheless, I stand by the assertion that identifiers in Common Lisp, be they local or global, have two bindings, a value binding and a function binding, and that this is the reason for the existence of an explicit FUNCALL function, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ that is, to enable one to call a function stored in an identifier's value slot. I also reaffirm my position that multiple bindings cause a great deal of confusion! -Erann What about this: (funcall #'(lambda (x) (1+ x)) 10) I am passing a function to FUNCALL, not an identifier. Being able to call *functions* is the reason for the existence of FUNCALL. If there was no FUNCALL then you can kiss all of your :test, :key, and any other keywords that expects a FUNCTION for an argument goodbye. ERIC MUEHLE -- Eric Muehle (require :standard-disclaimers) Boeing Aerospace and Electronics usenet: {world}!uw-beaver!ssc-vax!muehle Seattle, WA arpanet: ssc-vax!muehle@beaver.cs.washington.edu