defun

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Lua error in package.lua at line 80: module 'strict' not found.defun (short for "define function") is a macro in the Lisp family of programming languages that defines a function in the global environment[1] that uses the form:

(defun <function-name> (<parameter1><parameter2>...<parameterN>) 
  functionbody)

Defining the function addnumbers that adds two numbers:

 ;; Define a function that adds two numbers together:
 (defun addnumbers (number1 number2)
   (+ number1 number2))
 (addnumbers 5 4)
 9

defining function square that squares a number:

 ;; Define a function that squares a number:
 (defun square (x) 
   (* x x))

and defining a function that returns the factorial of a number:

(defun factorial (number)
  (if (= number 1)
      1
    (* number (factorial (- number 1)))))
(factorial 6)
720

See also

References

  1. Macro DEFUN

External links


<templatestyles src="Asbox/styles.css"></templatestyles>