Clojure Gazette 1.43


Clojure Gazette

Issue 1.43 --- June 30, 2013



I've been using ClojureScript at my new job and, although there are some hurdles, I am liking it very much. Previously, I was working mainly in Javascript in the browser. ClojureScript brings the solid engineering that we are familiar with in Clojure to Javascript environments. If you considered and rejected it before, give it another shot. The compiler is fast, the tooling is good, and there are some serious libraries to choose from. We have to thank the amazing developers working on the project.

Eric Normand __

P.S. Feel free to email me any time. I love hearing from readers.

Lambda Jam

Lambda Jam is coming next week. I'll be there and I'll be hosting a Jam. Bring your laptop and please say hi!

NOLA Barcamp 6

New Orleans Barcamp is a great event. If you're going to be anywhere near the Crescent City July 13/14, register and go. It's free. It's fun. And it's a great way to get to know the burgeoning tech scene here in New Orleans.

core.async (github repo)

This project provides Go-style concurrency primitives called channels. What's more, the library works on the JVM and in ClojureScript. Channels look like they may free ClojureScript from "Callback Hell".

via David Nolen

Go Concurrency Patterns

Rob Pike (co-creator of Go) talks about how Go's channels can be combined to create interesting concurrency patterns, including a timeout.

via David Nolen

Building an iOS weather app with Angular and ClojureScript

Weathertron was released recently. Not only does it look awesome (which we expect from Kevin Lynagh ), but it was written in ClojureScript and uses PhoneGap to run on the iPhone and iPad. This post details some of the design decisions behind the technologies they used.

The point is, we're starting to get real choices on the frontend. I'm not talking about the choice of using optional semicolons or between writing JavaScript and a language whose golden rule is "It's just JavaScript". Real choices.


From David Nolen, this library makes ClojureScript persistent data structures available from plain Javascript. It also provides the powerful Clojure abstractions over Javascript and mori data structures, including map, reduce, and conj. It's a pretty deep integration of Clojure principles with Javascript.

Faster, Better DOM manipulation with Dommy and ClojureScript

This article explains how using macros to compile DOM operations at compile time can significantly speed up your DOM compared to JQuery. The Dommy library has been released by Prismatic.

lein-cljsbuild (github repo)

Oh, auto build! What would I do without you? Seriously, if you are writing ClojureScript, you need this plugin running on your modified code. It is also the easiest way to get a ClojureScript compiler working on your machine. Use it!


Beyond Contracts: An Exploration into Unified Specifications

Paul deGrandis presents sterling , which brings test specification, programming by contracts, and type declarations into a single, extensible definition.


Chris Houser presents the inner workings of the ClojureScript compiler.