Cómo regresar temprano en Scala [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Retorno explícito de la acción de juego 2 respuestas

Estoy aprendiendo Scala en este momento. Una cosa que me gusta hacer es regresar temprano. Estoy convencido de que es mucho más fácil de leer para todos, ya que eliminamos los estados no válidos antes. Ahora, como Scala es un lenguaje funcional y he leído que cortar la computación es un mal estilo funcional, me pregunto si hay algún truco o programación funcional equivalente al retorno temprano.

Esto es un código que escribiría, para ser completamente claro, este es solo un ejemplo tonto, no estoy buscando el truco especial de mi caso especial, sino más bien un consejo general sobre cómo lidiar con estos.

if (request.headers.get(session_header).isEmpty) {
  BadRequest(session_not_set)
} else {
  Ok(CartHelper.getCart(session, user))
}

Ahora, lo que estoy tentado a hacer es:

if (request.headers.get(session_header).isEmpty) {
  BadRequest(session_not_set)
  return;
}

Ok(CartHelper.getCart(session,user))

¡Si tienes alguna pista para mí!

Respuestas a la pregunta(1)

Su respuesta a la pregunta