1. Runs on JVM.
2. Uses features of Functional Programming Languages.
Features of Functional Programming Languages.
a. Functional languages are based on the lambda calculus.(A fantastic Post on Lamda Calculus)
b. In contrast to the usual imperative languages (e.g., C, Fortran, and Ada), in which variables represent cells in memory that can be modified using the assignment operator = (or :=), functional languages view the use of the 5 operator as an expression of an equation.
c. Because variables in a functional program cannot be modified, repetition
must be expressed in a functional program via recursion rather than through
the use of loops.
d. Higher Order Functions :Most functional languages support functions that operate over functions—that is, functions that take other functions as parameters and/or return functions as values.
e. NON-STRICT FUNCTIONAL LANGUAGES :In a class of functional languages
called non-strict functional languages,of which Haskell is the most popular, no
function evaluates its arguments unless they are needed.
Explanation on Functional Programming Languages
3. Statically Typed Language.
An explanation of Typed Languages and Type Inference is provided in the link below.
Static-type-systems
4. A Dynamic Programming Language because it supports
a. Functional Programming Concepts.
b. Closures.
c. Reflection
d. Object Runtime Alteration.
5. Because Scala code runs on the JVM and the CLR, it benefits from all the performance optimizations provided by those runtimes and all the third-party tools that support performance and scalability, such as profilers, distributed cache libraries, clustering mechanisms.
Subscribe to:
Post Comments (Atom)

No comments:
Post a Comment