higher-order functions functions currying
parameters functions
infix notation arity-1
return type return statement
sealed class
equals best practices case-classes hashCode variables
definitions by-name by-value def val
functions recursion
higher-order functions