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