functions
variables hashCode case-classes best practices equals
higher-order functions functions currying
unit return type
return type return statement NonLocalReturnException syntax
access modifiers qualifiers
higher-order functions
by-name evaluation termination conditional expressions by-value if-else
parameters functions