Skip to content

Latest commit

 

History

History
 
 

Scala

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

##Scala

Scala is an object-functional programming and scripting language for general software applications, statically typed, designed to concisely express solutions in an elegant, type-safe and lightweight (low ceremonial) manner.

Scala has full support for functional programming (including currying, pattern matching, algebraic data types, lazy evaluation, tail recursion, immutability, etc.). It cleans up what are often considered poor design decisions in Java (such as type erasure, checked exceptions, the non-unified type system) and adds a number of other features designed to allow cleaner, more concise and more expressive code to be written.

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. Like Java, Scala is statically typed and object-oriented, and uses a curly-brace syntax reminiscent of the C programming language. Unlike Java, Scala has many features of functional programming languages like Scheme, Standard ML and Haskell, including anonymous functions, type inference, list comprehensions (known in Scala as "for-comprehensions"), lazy initialization, extensive language and library support for avoiding side-effects, for pattern matching, case classes, delimited continuations, higher-order types, and much better support for covariance and contravariance.

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

Fuente: Wikipedia

####Recursos

####Libros