functions
unit return type
return type return statement NonLocalReturnException syntax
evaluation termination conditional expressions by-name if-else by-value
override interfaces traits best practices inheritance trait
parameters functions
higher-order functions
higher-order functions functions currying
unit void return type
access modifiers qualifiers