created: 20221009124003601 modified: 20240619211228560 tags: Concepts Reference title: Functions type: text/vnd.tiddlywiki !! Introduction <<.from-version "5.3.0">> A <<.def function>> is a named snippet of text containing a [[Filter Expression]]. Functions can have named parameters which are available within the function as variables. Functions are usually defined with the [[Pragma: \function]]: ``` \function myfun(param:"2") [<param>multiply[1.5]] \end ``` Functions can be invoked in several ways: * Directly transclude functions with the syntax `<<myfun param:"value">>` * Assign functions to widget attributes with the syntax `<div class=<<myfun param:"value">>>` * Invoke functions via the [[function Operator]] with the syntax `[function[myfun],[value],...]` * Directly invoke functions whose names contain a period as custom filter operators with the syntax `[my.fun[value]]` or `[.myfun[value]]` !! How Functions Work Functions are implemented as a special kind of [[variable|Variables]]. The only thing that distinguishes them from ordinary variables is the way that the parameters are handled.