^title Fn Class ^category core A first class function—an object that wraps an executable chunk of code. [Here](../functions.html) is a friendly introduction. ### new **Fn**(function) Creates a new function from... `function`. Of course, `function` is already be a function, so this really just returns the argument. It exists mainly to let you create a "bare" function when you don't want to immediately pass it as a [block argument](../functions.html#block-arguments) to some other method. :::dart var fn = new Fn { IO.print("The body") } It is a runtime error if `block` is not a function. ### **arity** The number of arguments the function requires. :::dart IO.print(new Fn {}.arity) // 0. IO.print(new Fn {|a, b, c| a }.arity) // 3. ### **call**(args...) **TODO**