Clojure is a simple and powerful programming language. The rewards for using Clojure are easy to spot: more robust programs, code that is simpler to test, significantly shorter and more easily read and understood compared to traditional object-oriented languages. While there is much to be said about Clojure and it's ecosystem, this short tutorial has two goals: to give participants a basic understanding of Clojure, and to see examples of solutions to real-life problems.
Clojure is a fairly young functional programming language targeting the JVM (JavaScript and CLR). Its design goals are simplicity and user empowerment, while remaining practical in terms of performance, productivity and interoperability with the host platform.
Clojure is a rich language, and there is a lot more to learn than what can be covered in a half day. The intention of this tutorial is to give participants a feel of what Clojure programming is like using a mix of lectures and exercises. The first part will focus on the basics of functional programming with Clojure: pure functions, the sequence library and persistent data structures. The second part gives an example of using Clojure in practice. We'll walk you through a set of tools, a way of working and a small but working example Clojure application.
Lau is an entrepreneur who has been involved in software development for many years. After ending a career as a Project Manager at a danish consulting company, he launched his own firm Best In Class. When he is not busy consulting or training he also serves as the Director of Sales at a major security company. Best In Class is more than a name as it expresses the determination Lau has for pursuing the highest quality in all his dealings and successfully wielding Clojure is central to achieving this goal. Lau has personally built enterprise applications using Clojure, which are deployed in the Danish Health Care industry, the Energy Sector and in Financial Trading.
arl is the CTO of LessPainful, a Danish company providing automated functional testing of Android and iOS apps. Karl has a PhD in computer science and his industry experience includes many years of enterprise consulting and training, web technologies and systems integration. Karl instantly fell in love with Clojure the first time he heard about it in 2008, and has invested countless hours in it since. Karl has had the pleasure of using Clojure in several production systems, including a multiple data-feed processing system, and test automation at LessPainful. He is a frequent speaker at international conferences, he blogs at http://www.conj-labs.eu and runs open source projects like clj-ds.