Uma função é definida usando o ‘defn’macro. A seguir está a sintaxe geral da definição de uma função.
Sintaxe
(defn functionname
“optional documentation string”
[arguments]
(code block))
Funções podem ter strings de documentação, o que é bom para descrever o que a função realmente faz.
Exemplo
A seguir está um exemplo simples de uma função.
(ns clojure.examples.hello
(:gen-class))
;; This program displays Hello World
(defn Example []
(def x 1)
(def y 1.25)
(def str1 "Hello")
(println x)
(println y)
(println str1))
(Example)
No exemplo acima, o nome da função é Exemplo.
Resultado
1
1.25
Hello