Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Clojure - An Introduction

DZone's Guide to

Clojure - An Introduction

· Java Zone ·
Free Resource

Learn how to build stream processing applications in Java-includes reference application. Brought to you in partnership with Hazelcast.

Clojure is a dynamically typed, functional programming language available on the JVM. A significant benefit of functional programming is the ease with which the languages can be used to program concurrency. It does this through immutable state. Functions are only dependent on the arguments passed into it, and do not modify any global data. As a result, there are no side affects.

Recently, R. Mark Volkmann put together an excellent Clojure tutorial.  The tutorial is very thorough, including information on how to download and get started with Clojure. To provide some perspective for Java developers not familiar with Clojure, the first example shows the same simple program implemented using both Java and Clojure code. There is also a great section on Java interoperability, showing the syntax for how Clojure programs can leverage the Java API.

There's been a lot of innovation in the programming language space the past few years, with more to come going forward. With the JVM supporting an ever expanding number of programming languages, the barrier to adoption has been reduced significantly. Development teams can adopt a new language while still leveraging their existing platform investments. In other words, the ops guys don't know it's not Java. Find the time to check out this tutorial. It's worth it!

Learn how to build distributed stream processing applications in Java that elastically scale to meet demand- includes reference application.  Brought to you in partnership with Hazelcast.

Topics:

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}