finished case_expressions.sml