**''FUNCTION''** Function form expects one argument, most typically a symbol. It will look up a function object associated with the symbol. The ''FUNCTION'' form is related to quoting and has the special character ''#'%%%%'' (sharp-quote). A symbol in LabLISP can name a variable and a function at the same time - like in Common LISP, there are separate namespaces for values and functions. A symbol in an expression is evaluated to the function if it stands first in the form, otherwise it is evaluated to the value as variable. With sharp-quoting a symbol, we force evalation to the function named by it. Following example should make this more clear >(setq f 3) ; we defined variable F, with value 3 3 >(defun f () 42) ; we defined function F, with no parameters, returning 42 F Now we have symbol F which has both value and function, let's see how it evaluates >f ; we are evaluating just symbol outside of form 3 >(+ 1 f) ; F will be evaluated to value 3 4 >(f) ; function call to F 42 >'f ; quoting F F >#'f ; (FUNCTION F) call returns the function object itself # See also functions ''SYMBOL-VALUE'', ''SYMBOL-FUNCTION'' in the [[ch2_3_pack_sym|Package and symbol operations]] section, and the applicative functions ''FUNCALL'' and ''APPLY'' in [[ch2_3_manage|Management]] section. See also the future section 1.3.4 for more details.