T9: Bending Clojure to your will: Macros and Domain Specific Languages

  • Leonardo Borges
September 24, 2013 2:00 - 5:30 PM

Abstract

Programmers, functional or not, oftentimes struggle to understand the ways of Lisp macros: when to use them, what to use them for and, more importantly, when not to use them. Macros are programs that write programs - and that can be daunting at first. But it doesn't have to be! Through a series of real-world examples from the Clojure world you'll learn how to write your own macros and use them to make your programs more expressive and elegant by building powerful abstractions. Do more with less.

Previously given at LambdaJam.

Rough Outline:

Intended Audience

Functional programmers familiar with any Lisp dialect - though basic knowledge of Clojure would be helpful.

No knowledge of macros is required.

Infrastructure required:

All you need is to make sure that you have these installed:

Leonardo Borges

Leonardo Borges A programming languages enthusiast, Leonardo loves writing code, contributing to open-source and speaking about subjects he feels strongly about. Currently undertaking the challenges of consulting at ThoughtWorks, his first contact with Functional Programming came from using Scheme while reading SICP. Not too long after he fell in love with Clojure and has since sneaked it into his latest client project, which became ThoughtWorks' first Clojure engagement to go live in Australia. He created and runs clj-syd, the Clojure Sydney User Group, where local Clojurians gather monthly for talks and hack nights. He also blogs about other geeky stuff, plays the guitar and does stupid things like skydiving, rafting or rock climbing whenever he can. http://www.leonardoborges.com/ twitter: @leonardo_borges