The name Scala stands for “scalable language.” The language is so named becauseitwasdesignedtogrowwiththedemandsofitsusers. Youcanapply Scala to a wide range of programming tasks, from writing small scripts to building large systems.1 Scalaiseasytogetinto. ItrunsonthestandardJavaplatformanditinteroperates seamlessly with all Java libraries. It’s a great language for writing scripts that pull together Java components. But it can play out its strengths even more for building large systems and frameworks of reusable components. Technically, Scala is a blend of object-oriented and functional programming concepts in a statically typed language. The fusion of object-oriented and functional programming shows up in many different aspects of Scala; it isprobablymorepervasivethaninanyotherwidelyusedlanguage. Thetwo programming styles have complementary strengths when it comes to scalability. Scala’sfunctionalprogrammingconstructsmakeiteasytobuildinteresting things quickly from simple parts. Its object-oriented constructs make it easy to structure larger systems and to adapt them to new demands. The combinationofbothstylesinScalamakesitpossibletoexpressnewkindsof programming patterns and component abstractions. It also leads to a legible and concise programming style. Because it is so malleable, programming in Scala can be a lot of fun. This initial chapter answers the question, “Why Scala?” It gives a highlevel view of Scala’s design and the reasoning behind it. After reading the

reference

Comments