Functional Programming Introduction -Scala-

Do you know what is functional programming? Why it is important? In an always changing IT environment you should know, so… come and find it out !! Nice mixture of theoretical information lecture and a short practical workshop in Scala.


Wikipedia says the following about Scala:

“Scala (/ˈskɑːlɑː/ skah-lah)[7] is a programming language for general software applications. Scala has full support for functional programming and a very strong static type system. This allows programs written in Scala to be very concise and thus smaller in size than other general-purpose programming languages. Many of Scala’s design decisions were inspired by criticism of the shortcomings of Java.[6]

Scala source code is intended to be compiled to Java bytecode, so that the resulting executable code runs on a Java virtual machine. Java libraries may be used directly in Scala code and vice versa (language interoperability).[8] Like Java, Scala is object-oriented, and uses a curly-brace syntax reminiscent of the C programming language. Unlike Java, Scala has many features offunctional programming languages like SchemeStandard ML and Haskell, including curryingtype inferenceimmutabilitylazy evaluation, and pattern matching. It also has an advanced type system supporting algebraic data typescovariance and contravariancehigher-order types (but not higher-rank types), and anonymous types. Other features of Scala not present in Java includeoperator overloading, optional parameters, named parametersraw strings, and no checked exceptions.

The name Scala is a portmanteau of “scalable” and “language”, signifying that it is designed to grow with the demands of its users”