Small 412966 Ramsey Nasser on

Arcadia is a project which integrates Clojure 1.7 into the Unity3D game engine and development platform. Based on Clojure's CLR branch, Arcadia compiles to optimized bytecode, with performance suitable for general game development. It includes a networked REPL that can be targeted by arbitrary editors, and provides functionality for fast, bidirectional conversion between Unity objects and persistent Clojure data.

Software engineer Ramsey Nasser and programmer Tims Gardner talk about usage, setup, patterns for live game development, and Arcadia's approach to the Unity API. They also talk about speculative implications of dynamic functional games and graphics.


This talk was given at the NYC Clojure Users Group meetup at Codeacademy HQ.

Small 48810 Alan Shaw on

Developer Alan Shaw talks about Guibas and Stolfi's quad-edge structure and demonstrates the symmetries that make it so beautiful: it's capable of simultaneously representing a graph, its dual, and its mirror image; it exports just two topological primitives which suffice to implement arbitrary graph construction; and all operations are reversible.

He also explores the Voronoi diagram, mentions some of its application domains, and looks at some of its related structures.


The implementation uses @toxi's Clojure/ClojureScript libraries for computational geometry; a generic Om/canvas animator component; Om's time-machine capability; and some function decorators for pre-, post-, and substitute actions to facilitate recording and playback of algorithm results, incidental computations, and debug/logging information.

Repository available here:

This talk was given at the NYC Clojure Users Group meetup at Two Sigma Investments.

Small john John Chapin on

John Chapin (Senior Software Engineer, Intent Media Inc.) gives an overview of Vert.x’s capabilities and practical use cases with a focus on the newly-released Clojure language support. He gives a demo of launching Clojure verticles and modules using vertx-chat.


This talk was hosted by NYC Clojure Users Group at Two Sigma Investments in NYC.

Small geo Geo Grigoryan on

Clojure Programmer Geo Grigoryan talks about building mobile apps with ClojureScript and Cordova. Corodova allows you to write your user interface in HTML/Javascript and gives you access to hardware functionality via its plugin system.

In this talk, he'll cover the basic architecture, setup, and lessons he's learned while developing these apps.


This talk was given at the NYC Clojure Users Group hosted by Two Sigma Investments in NYC.


Small member 15583311 Marc Schwartz on

In this talk, we hear from Marc Schwartz about mobile app development in Clojure. First, we'll hear about the Clojure mobile development landscape. Then, we'll dive into details about Marc's new platform, which solves the slow development cycle that hampered earlier approaches. This talk was recorded at the NYC Clojure Users Group meetup at Two Sigma Investments.



Small brandon bloom Brandon Bloom on

In this talk, Brandon Bloom, engineer at, talks about the many trees that are in a Clojure programmer's software. Both the values Clojure programmers manipulate and the code they manipulate them with, are made from trees. It's way too easy to get caught up in a project and miss the forest for the trees, but one can also ask how often they've missed the trees for the forest? This talk is an exploration of trees from a unique perspective that will hopefully inform your thinking and lead your program design out of the woods. This talk was recorded at the NYC Clojure Users group meetup at Two Sigma Investments.



Small richhickeuy Rich Hickey on

In this talk, Rich Hickey from Datomic, gives an introductory talk on Datomic as a functional database. He talks on a Datomic as value Database, which means that you can write functions that take values as arguments and similarly can return a database value as its result. He also talks on the importance of a durable, consistent Database that can be shared across processes.  Rich also offers some hands on use from Clojure. This talk was recorded at the LispNYC meetup at Meetup HQ.



Small speaker david David Nolen on

Note: This is the transcript from the "Core.async a Clojure Library for Asynchronous Programming" presentation by David Nolen from The New York Times. The video of his presentation can be found here:

David Nolen: My name is David Nolen. I’m going to talk a bit about ClojureScript in core.async. How many people here have ever read about Core’s communicating sequential processes? Cool. That’s good. Has anybody ever tried using Golang, Rob Pike's Golang? Only one, okay. Has anybody used a language that actually implements CSP? I mean, Go is one. So not that many. So this is something I think is really funny that something that nearly everybody has heard of, but nobody has tried. There’s been languages in the past. You had Occam-pi for the transputer, you had Concurrent ML, which was a variant of Standard ML that supported CSP. Then Go is actually really making waves. People really like it. I don’t really like it, but I think the CSP aspect of it is actually pretty cool. It very much holds very closely to Tony Hoare’s ideas.

So, Rich Hickey decided more or less to just copy Go’s interpretation of Tony Hoare’s original ideas, so I’m not going to assume that you know too much about CSP, and so we’ll go slow, but we’ll end up going fast later, so it won’t be boring if you think you know this stuff.


Small speaker david David Nolen on

In this talk, we hear from David Nolen from the New York Times about core.async, the new library for asynchronous programming in Clojure and ClojureScript. He'll be talking about Communicating Sequential Processes & Responsive Design. This talk was recorded at the NYC Clojure Users Group meetup at Two Sigma Investments. The transcript from this talk can be found here:


As clients diversify on all fronts, how do we program flexible user interfaces without getting mired in software bloat and rampant complexity? Communicating Sequential Processes gives us the tools we need to design modular user interface components - we'll see how with ClojureScript and core.async.


Join Us