¿Cuál es la diferencia entre las clases scala, los scripts y las hojas de trabajo en Intellij-idea?

Estoy usando Intellij-idea para la programación scala (con el complemento sbt).

Quiero saber cuál es la diferencia entre las clases scala, los scripts scala y las hojas de trabajo scala. Cuando usamos cada uno de ellos?

Esto será muy bueno si puedes explicarlo con un simple ejemplo.

Gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta