When: 7. Sep 2009 at 00:00 -

Abstract

JAOO Geek Night:

The Clojure Programming Language

 
Time: September 7, 2009, 16.00 - 18.00 

Place: Margrethepladsen 4, DK-8000 Århus C, Denmark

Speaker/Contact: Karl Krukow

Fee: Free of charge

Closing date for registration: September 3, 2009

Clojure is..

... a new functional, dynamic programming language for Java Virtual Machines. The primary novelty of Clojure is its strong focus on and support for in-process concurrency: a unique concurrency model, combining a notion of persistent (i.e., immutable, fast) data structures, with a lock-free concurrency model. This simplifies concurrent programming greatly and has good scalability properties. 

Influenced by LISP and Haskell, Clojure supports pure, lazy functional programming and has a powerful macro system which makes extending the language to support DSLs easy and powerful.

This talk..

... is split in three parts. In the first part, Clojure is introduced for those who don't know the language. There is so much to cover that this will be a fast tour with pointers to more information, but we will emphasize the unique aspects of the language.

In the second part we go into more depth regarding the implementation of persistent (and transient data structures) - "the secret sauce of Clojure" ;-)

In the third part we get to see Clojure in action running on some very cool technology - a unique opportunity! Azul Systems (www.azulsystems.com) has promised to make available one of their large Vega 3 compute appliances (864 core, 368 GB memory, let's go concurrent). We will explore how the Clojure concurrency model fares in practice, scaling a demo of a parallel Traveling Sales Problem algorithm. We will also push the implementation to its limits in a high-contention demo. Great fun!

About me..

Karl Krukow works as a software pilot for Trifork (www.trifork.com). He graduated from University of Aarhus in 2006 with the PhD dissertation Towards a Theory of Trust for the Global Ubiquitous Computer. In August 2006 he started working for Trifork, primarily on Java, JEE and web applications. Later, has has been working with Ruby, Ruby on Rails, Clojure as well as conferences. His current interests are functional programming, concurrency, web-development, REST and dynamic languages.

 


We're sorry, registration is closed