simple functions
default and named arguments in function
variable arguments in a function
procedures
lazy values. Finally!