an overview of scala programming language