Clojure Gazette 107

Pixie, Pedestal, Transducers

Clojure Gazette

Issue 107 December 21, 2014

Editorial

Hi Clojurians,

Enjoy the issue!

Rock on!
Eric Normand

PS Learn more about the Clojure Gazette and subscribe. Learn about advertising in the Gazette .

Caching multimethod default value dispatch

Alex Miller has a new blog and he has already been flooding it with great posts about the inner workings of Clojure (and about patches still being reviewed). As you may know, Alex Miller is the shaft of the Clojure bugfix and feature patch spear, driving the tip into its fearful enemies.

Interview with Timothy Baldridge, Pixie's language creator

Pixie is getting some traction and making waves. Read about the design decisions and future direction of the new language in this interview.

Clojure Applied: From Practice to Practitioner

Alex Miller and Ben Vandgrift have written a book. It's got a page on The Pragmatic Bookshelf, though it does not appear ready for preorder.

Playing with clojure core interfaces

Not recommended for prime time, but an interesting read, especially if you're into stretching the core Clojure abstractions to their semantic limits. In this article, Pierre-Yves Ritschard guides you through implementing the protocols necessary to make redis act as a transient.

Why You Can't Use Clojure's `println` for Logging, and How to Fix It

I often see garbled printed output because of multiple threads printing using println. In fact, I use it in the core.async videos to demonstrate that things are run ning concurrently. This article goes deeper than I expected about why println is not thread-safe.

Give Pedestal another chance

Pedestal has a deeper conceptual model than Ring. Ring models HTTP requests as the argument to a function. The return value is the response. While conceptually elegant, it does not model many types of HTTP interactions very well, including long polling or Websockets. Pedestal has taken Ring and decomplected it into even more essential parts. Read this article by Frankie Sardo which gives a nice introduction to Pedestal's concepts.

Loco Github

I've been writing some code that needed a constraint solver, and I turned right to Loco. Loco is the creation of Alex Engelberg, who many may know as the son of Mark Engleberg, maintainer of Instaparse. Loco uses a nice, data-driven way of describing constraints that makes it very easy to compose sets of constraints. Is this the first Clojure Parent-Kid duo?

Lost in Transduction - Heresy and Ingratitude Edition

Peter Fraenkel describes a different perspective on Transducers.

ThoughtWorks Technology Radar

GorillaREPL, Cursive, and Reagent are now all on ThoughtWorks' radar. I'm very happy because this will foster adoption with ThoughtWorks' clients and beyond.

Clojure/conj in Five Talks

Jason Lewis and Milt Reder give their highlights of Clojure/conj 2014.