I like Dart because everything is an object. Functions are first-class citizens because they support all the operations that are generally available to other types. This means each function have the following properties:
Let's see where and how can we use functions as usual or as first-class citizens.
Naming functions by variable means that we can create a reference to a function and assign it to a variable, as shown in the following code:
library function_var; // Returns sum of [a] ...