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

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Ā Scheme,Ā Standard MLĀ andĀ Haskell, includingĀ currying,Ā type inference,Ā immutability,Ā lazy evaluation, andĀ pattern matching. It also has an advanced type system supportingĀ algebraic data types,Ā covariance and contravariance,Ā higher-order typesĀ (but notĀ higher-rank types), andĀ anonymous types. Other features of Scala not present in Java includeoperator overloading, optional parameters,Ā named parameters,Ā raw 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”