eval

eval

eval

Syntax (eval expr) → value of evaluated expression
Arguments expression: The thing you want to evaluate. It can handle numbers, function, strings, and lists. What it does, depends on what argument it gets.
Returns If it is passed a number or lamdba function it just returns that otherwise tries to run the list as a function and returns what that function returns, or if it is a string it returns the value of the variable with that name.
Category function operator, string operator, variable
Description Returns the evaluated expression. If it is passed a number or function it just returns that if it is a list tries to run the list as a function and return what it returns, or if it is a string it returns the value of the variable with that name.

Example

(eval '(add 1 1))

This is a list case. This will return the number 2.

(block (varies)
	(setq varies "I am a variable")
	(eval "varies")
	)

This is a string case. This will return the string “I am a variable”.

(eval (add 1 1))

Even though it is similar to the list case this is a number case (the (add 1 1) is run first). This will return the number 2.

(eval add)

This is the function case. This will return the function add. Return to Functions list