@jstepien @jeeger I think another aspect is that data driven APIs are the norm. Data in Clojure is transparent and inert. When you call a function, the only things you need to know are the shape of the data you pass in and the shape that you get back.

This is a big contrast from OO style APIs where you work with graphs of objects that are opaque and stateful.