PurelyFunctional.tv Newsletter 292: Composition, Modeling, Scope

Sign up for weekly Clojure tips, software design, and a Clojure coding challenge.

Issue 292 - September 17, 2018 · Archives · Subscribe

Hi Clojurers,

Well, I'm looking forward to getting back into the swing of things after a few weeks of moderate work on PurelyFunctional.tv due to the birth of my daughter. Have I missed anything in the Clojure world while I was out? Let me know.

Rock on!
Eric Normand <eric@purelyfunctional.tv>

PS Want to get this in your email? Subscribe!

Hire Eric to train your team

I have a couple of spots open for client work. I'm currently offering two specialized services. These are open for remote or on-site:

Clojure Kickstart is training to get your team of programmers productive in Clojure. Get the skills, the tooling, and the workflow you need to make the most of Clojure.

After the Prototype is where I and your team workshop a powerful core abstraction and come up with a plan for refactoring it into your codebase.

If you or someone you know are interested, please reply to this email.

Java is still available at zero-cost

Stephen Colebourne explains what is known about Oracle's new licensing and planned release cycles for their JVM and JDK. This article cleared up a lot about what JDK I should choose and recommend in the future. Daniel Compton linked to this in The REPL, but I thought it was important enough to share again.

The Power of Composition YouTube

Scott Wlaschin explains why functional programmers like composition, and some of the cool things we can do with it.

SWARMing: Scaling Without A Religious Methodology YouTube

Katherine Kirk & Dan North talk about company culture and systems thinking using asian philosophical ideas.

Datomic Ions YouTube

Stuart Halloway explains Datomic Ions. This one goes into depth about what it is and how it works. It's over an hour long.

Domain Modeling Made Functional YouTube

Scott Wlaschin talks about modeling different business domain requirements using only the type system. It includes optional values, validation, and more complex requirements.

Techniques in Functional JavaScript YouTube

Jonathan Walters presents some cool patterns for doing functional programming in JavaScript, including writing his own function composition and currying.

How do things compose across domains? Podcast

One of the important parts of my theory of functional programming is that composing anything with an action results in a new action. That means that actions are easier to create than the other two domains (calculations and data). I talk about that in this episode of my podcast.

Clojure Scope Video Course

Scoping rules are a very important part of any language. Clojure has three types of scope, and knowing how to use each will help you write maintainable code. That's what this short course (40 minutes) will teach you. I sometimes think that this is too basic of a course, but it fits well with my goal of making PurelyFunctional.tv the most comprehensive Clojure training available.