anmonteiro Code ramblings

Requiring Node.js modules from ClojureScript namespaces

Node.js module support has been greatly enhanced in the upcoming release of the ClojureScript compiler. This post explains how to seamlessly require Node.js packages from any ClojureScript namespace. Read on!

Read more  ➙

Compiling ClojureScript Projects Without the JVM

I have dreamed about being able to compile a ClojureScript project without installing Java ever since coming to know that ClojureScript can compile itself. While projects like Planck and Lumo can either run arbitrary ClojureScript forms at the REPL or run ClojureScript scripts, none have actually supported flat out compiling an entire ClojureScript project. Until now.

Read more  ➙

The fastest Clojure REPL in the world

One common complaint of Clojure REPLs is their startup time. Although that complaint is often somewhat unfounded (and related to tooling), it still takes the bare Clojure JAR about 1 second to start on new hardware. Planck — through bootstrapped ClojureScript, and owing to the small latency exhibited by JavaScript VMs — managed to improve the time that it takes to bootstrap a Clojure(Script) REPL. A new kid on the block promises to perform even faster. Read on!

Read more  ➙

ClojureScript `require` outside `ns`

The next version of the ClojureScript compiler adds support for using require outside of the ns form. Owing to ClojureScript's compilation model, however, there exist subtle differences with respect to the behavior that Clojure provides. Read on to learn more.

Read more  ➙

Om Next internals: Incremental Rendering

The phrase "incremental rendering" is frequently thrown around in the context of Om Next's design. This post is an attempt to clarify what the concept of incremental rendering is all about, what it does for your Om Next applications and how you can take advantage of its properties.

Read more  ➙