return type return statement
return type return statement NonLocalReturnException syntax
variables case-classes equals hashCode best practices
override interfaces traits inheritance trait best practices
syntax parentheses
return type best practices type inference
val by-name definitions def by-value
val by-name definitions def termination by-value
evaluation reduction rules expressions Boolean expressions termination
by-name if-else evaluation termination conditional expressions by-value