Scala is a multi-paradigm language. This chapter introduces functional programming concepts in tandem with nonfunctional programming concepts. This chapter is aimed at making you comfortable with the building blocks of the Scala language. Before embarking on an in-depth journey of Scala, this chapter introduces the basic concepts of Scala that should give you enough understanding to enable you to write useful programs. To that end, we had to leave out some details. We do cover the detailed explanation in the subsequent chapters.