Java Reference
In-Depth Information
Note The JVM languages represent a new category of languages that run on the JVM. With the latest
version, Java 8, Java is no longer a privileged JVM language and is now simply one of the many languages
that run on the JVM.
The chapter begins by introducing the JVM languages and then introduces Java EE. The Java
EE platform is the set of API specifications that act as the building blocks for developing web
applications. The chapter then highlights the Java web frameworks, which will be the subject of the
topic from Chapter 4 onward.
JVM Languages
The JVM is the runtime environment that provides you with the ability to use different programming
languages for building web applications. The JVM languages can be largely classified into two types:
languages that are designed for the JVM and existing languages that are ported to JVM.
Languages Designed for the JVM
Plenty of languages are specifically designed for the JVM; Table 1-1 describes a few of them. All but
Clojure are discussed in this topic.
Table 1-1. Languages Designed for the JVM
Language Designed for JVM
Description
Clojure 6
Clojure is a dynamically typed, functional language.
Groovy
Groovy is a dynamic, compiled language with syntax similar to Java but is
more flexible.
Java
Java is a statically typed, imperative language. The latest release of Java,
Java 8, supports aspects of functional programming.
Scala
Scala is a statically typed, compiled language that supports aspects of
functional programming and performs a large amount of type inference,
much like a dynamic language.
Here are some important definitions:
Dynamic typing : Dynamic typing keeps track of information about what sort of
values the variables contain by carrying the type information on the values held
in variables.
Static typing : In static typing, the type information is all about the variables, not
the values in them.
http://clojure.org/
6
 
 
Search WWH ::




Custom Search