Stuart Halloway, Author of Progamming Clojure, CEO of Relevance

Stuart Halloway

Biography: Stuart Halloway

Stuart Dabbs Halloway is a co-founder of Relevance, Inc. Stuart is the author of Programming Clojure, Component Development for the Java Platform, and Rails for Java Developers.

Stuart regularly speaks at industry events including the No Fluff, Just Stuff Java Symposiums, the Pragmatic Studio, RubyConf, and RailsConf. 

Software passion: Writing expressive code that handles domain complexity, not platform complexity.

Presentation: "Clojure Protocols are *not* Interfaces!"

Protocols and types allow Clojure programs to deliver on the failed promise of OO: reuse by composition. While at a glance these features appear to be just another variant of interfaces and classes, protocols and types are different beasts altogether, fixing subtle problems that have plagued reuse in mainstream OO languages. Come and see how these features question fundamental assumptions in OO, and how you can use them to build object models that compose cleanly into larger systems.
Keywords: Clojure, OO, Design
Target Audience: People who think that good design is important, but have always had a nagging feeling that OO makes it harder than it has to be.

Workshop: "Introduction to Clojure"

Track: TRAINING: LANGUAGES AND PLATFORMS / Time: Sunday 09:00 - 16:00 / Location: Musikhuset: C103

In this course, you will learn how to think in Clojure.  
Equally important, you will learn why you might want to:

  1. Simplicity: Clojure's abstractions are simple and orthogonal. Pure functions, software transactional memory, protocols, and the sequence library let you build cleanly without waste.
  2. Empowerment: Clojure's practical approach to JVM interop gives you access to the full range of the Java ecosystem, without the pain.
  3. Focus: Because Clojure is a Lisp, you control design patterns, instead of the them controlling you. Macros and code-as-data keep your code focused on your problem domain, not your language.

Please bring a laptop with labrepl installed. Work through the README in order to follow along in the tutorial.

if you have setup questions please report them here

Keywords: Clojure, lisp, java, functional programming, software transactional memory

Target Audience: This course is for experienced programmers. You should have: (1) 5+ years experience in a mainstream software development language, and (2) be a self-starter comfortable installing and building open-source software. 

See training location on a map