Scala 2.7.5
Scala 2.7.5 Ranking & Summary
Scala 2.7.5 description
Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages.
Scala is also fully interoperable with Java and it is the successor of Funnel, a language based on join calculus.
Main features:
Scala is object-oriented:
- - Scala is a pure object-oriented language in the sense that every value is an object. Types and behavior of objects are described by classes and traits. Class abstractions are extended by subclassing and a flexible mixin-based composition mechanism as a clean replacement for multiple inheritance.
Scala is functional:
- - Scala is also a functional language in the sense that every function is a value. Scala provides a lightweight syntax for defining anonymous functions, it supports higher-order functions, it allows functions to be nested, and supports currying. Scalas case classes and its built-in support for pattern matching model algebraic types used in many functional programming languages.
- - Furthermore, Scalas notion of pattern matching naturally extends to the processing of XML data with the help of right-ignoring sequence patterns. In this context, sequence comprehensions are useful for formulating queries. These features make Scala ideal for developing applications like web services (external link).
Scala is statically typed:
- Scala is equipped with an expressive type system that enforces statically that abstractions are used in a safe and coherent manner. In particular, the type system supports:
- - generic classes,
- - variance annotations,
- - upper and lower type bounds,
- - inner classes and abstract types as object members,
- - compound types,
- - explicitly typed self references,
- - views, and
- - polymorphic methods.
- - A local type inference mechanism takes care that the user is not required to annotate the program with redundant type information. In combination, these features provide a powerful basis for the safe reuse of programming abstractions and for the type-safe extension of software.
Scala is extensible:
- The design of Scala acknowledges the fact that in practice, the development of domain-specific applications often requires domain-specific language extensions. Scala provides a unique combination of language mechanisms that make it easy to smoothly add new language constructs in form of libraries:
- - any method may be used as an infix or postfix operator, and
- - closures are constructed automatically depending on the expected type (target typing).
- - A joint use of both features facilitates the definition of new statements without extending the syntax and without using macro-like meta-programming facilities.
- - Scala is designed to interoperate well with popular programming environments like the Java 2 Runtime Environment (JRE) and the .NET Framework (CLR). In particular, the interaction with mainstream object-oriented languages like Java and C# is as smooth as possible. Scala has the same compilation model (separate compilation, dynamic class loading) like Java and C# and allows access to thousands of high-quality libraries.
System requirements:
-
Enhancements
- This was a maintenance release that fixed a few bugs in the Actors library; no language changes were introduced.
Scala 2.7.5 Screenshot
Scala 2.7.5 Keywords
Bookmark Scala 2.7.5
Scala 2.7.5 Copyright
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com