Scala’s design has been influenced by many programming languages and ideas in programming language research. In fact, only a few features of Scala are genuinely new; most have been already applied in some form in other languages. Scala’s innovations come primarily from how its constructs are put together. In the following list you can see main influences programming language to scala:
- Java : Large part of the syntax , basic type , class libraries and execution model.
- C# : Large part of the syntax.
- Smalltalk : uniform object model and treating.
- Ruby : uniform object model.
- Eiffel : uniform access principle for method invocation and field selection.
- Haskell : functional programming approach and implicit parameters.
- F# : functional programming approach.
- Erlang : actor-based concurrency library.
- C++ : operator overloading and template system.
- Lisp : flexible syntax for building internal domain-specific languages.
- abstract types (alternative to generic types)
- traits for flexible component assembly.
- extractors a representation-independent way to do pattern matching.
have a nice time.