Update Definition

2025-11-03 19:40:17 +00:00
parent e2fda0177e
commit bce762b770

@@ -55,3 +55,32 @@ The following evaluates to 5:
x x
``` ```
## defn
macro: (defn _sym_ _lambda-list_ . _body_)
defn defines a new function in the default global environment.
defn is a shorter way to define functions. It is a macro defined in the standard library. The following code:
```
(defn my-add (a b)
(+ a b))
```
... is equivalent to a combination of `def` and `fn`, as seen below:
```
(def my-add (fn (a b)
(+ a b)))
```
The body may be comprised of many forms. In this case, the entire body code is pasted directly into the `fn` form.
As in `fn`, the entire body of the function will be executed when the declared function is called, and the
value of the last expression executed is returned as the value of the function call.
## defmacro
macro: (defmacro _sym_ _lambda-list_ . _body_)
defmacro is similar to `defn`, with the exception that it defines a new macro in the default global environment.