InfoQ Homepage LISP Content on InfoQ
-
Distributed Apps: The Joys of Testing and Debugging
Chris Houser discusses stack traces in Clojure and introduces a library for investigating activity across multiple threads and servers, plus a technique for reproducing race conditions.
-
Writing Datomic in Clojure
Rich Hickey introduces Datomic, including architectural and implementation details.
-
Macros are Hard!
David McNeil introduces a model for thinking about Clojure evaluation through code samples with the purpose for an easier understanding and writing of macros.
-
Building ClojureScript Libraries: Google Closure and Challenges of a Young Language
Creighton Kirkendall introduces Google Closure Tools and the challenges writing a ClojureScript library.
-
ClojureScript Anatomy
Michael Fogus discusses the internal workings of ClojureScript, how it analyzes and compiles Clojure code to JavaScript.
-
Bootstrapping Clojure at Groupon
Tyler Jennings presents how he ended up choosing Clojure, how he is using a Ruby tool-chain in Clojure, plus advice on introducing Clojure to a team.
-
DSLs in Clojure
Jim Duey advises on solving a problem by dividing it in smaller requirements that are dealt with, then using DSLs to compose results into one big solution. Code samples in Clojure.
-
Namespaces, Vars, and Symbols (Oh, My!)
Craig Andera explains how some of the main Clojure constructs – namespaces, vars, symbols – are processed during the read and eval phases of the compilation.
-
Continuous Testing in Clojure
Bill Caputo discusses adopting continuous testing for Clojure, what are the goals of such a practice, how it differs from other languages, practical considerations (tools, setup) and a demonstration.
-
The Generative Generation
Aaron Bedra shows code samples for writing Clojure tests using the test.generative framework, explaining why this framework and testing are useful.
-
Thinking in Data
Stuart Sierra discusses using a data-oriented programming approach in order to create programs that are easier to write and test. The session is accompanied with Clojure code samples.
-
Laziness: the Good, the Bad, and the Ugly
Paul Stadig discusses the advantages of using Lazy Seqs in Clojure, outlining some of the core lazy functions that can be helpful and possible pitfalls using such functions.