InfoQ Homepage LISP Content on InfoQ
-
Functional Design Patterns
Stuart Sierra discusses several design patterns implemented in functional languages, in particular Clojure: State/Event, Consequences, Accumulator, MapReduce, Reduce/Combine, Recursive Expansion, etc.
-
Clojure, Functional Programming and Data at uSwitch.com
Paul Ingles explains how Clojure’s approach to immutable data has helped uSwitch to treat everything as data and build many tools that operate on the same data without contention.
-
Leiningen 2 - Humane build management for Clojure
John Stevenson introduces Leiningen 2, a build system for Clojure, explaining how to set it up and how to use it.
-
An Introduction to Logic Programming on the JVM with core.logic (Clojure)
Edmund Jackson discusses the Goals, Logic Variables, Constraints, and Compositions that form the foundation of Logic Programming using Clojure examples.
-
Clever, Classless and Free
Håkan Råberg introduces Enumerable.java – an extension adding Lambdas to Java 5 – and shen.clj - used to compile Shen, a LISP variant, to Clojure.
-
Lessons from Functional Programming in Five Languages
Robert Rees shares lessons learned while using Clojure and applied them to other languages, Scala, JavaScript and Java.
-
Monads for Normal People
Dustin Getz shows writing monads code explaining how they work and why they are useful.
-
Clojure after the Honeymoon
Håkan Råberg and Jon Pither on introducing Clojure to an investment bank team having a large Java code, dealing with cultural differences, the lessons learned, and ways of dealing with legacy code.
-
This is Your Workflow on Catnip
Bodil Stokke introduces the productivity benefits of Catnip, a text editor with REPL (Read Eval Print Loop) functionality integrated into the Clojure environment.
-
Clojure + Datomic + Storm = Zolodeck
Amit Rathore describes the architecture of Zolodeck, a virtual relationship manager built on Clojure, Datomic, and Storm.
-
ClojureScript - Better Semantics at Low Low Prices!
David Nolen unveils optimization techniques behind ClojureScript: code size, expression-oriented semantics, numerics, operations on JS primitive types, persistent data structures, etc.
-
The Racket Way
Matthew Flatt explains the Racket – a Lisp dialect – way through examples: everything is a program, concepts are language constructs, the language is extensible, and everything composes.