GatorJUG presents a talk on programming language Clojure with Eric Lavigne
Eric Lavigne will give a presentation on Clojure. Please RSVP at CodeTown so we'll know how much pizz to order. We'll have a raffle for a free ticket to an upcoming conference on Flex as a bonus! See http://www.codetown.us/events/flex-camp-miami for details... Info about GatorJUG at www.gatorjug.org
Clojure is a dynamic programming language that targets the Java Virtual Machine. It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection.
Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. Clojure is predominantly a functional programming language, and features a rich set of immutable, persistent data structures. When mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system that ensure clean, correct, multithreaded designs.
This presentation will introduce the Clojure programming language. You will learn how to write simple Clojure programs, how to use Java code from Clojure, and how to use Clojure code from Java. You'll learn how to use agents and software transactional memory to make multithreaded programming easier. You'll also see a few examples of how Clojure can save you from re-implementing the same patterns over and over again.
Eric Lavigne is a Java programmer for UF's Bureau of Economic and Business Research. He has written several Clojure web development tutorials on his blog