My mental model of Clojure transducers

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • Metabase

    The simplest, fastest way to get business intelligence and analytics to everyone in your company :yum:

  • It seems folks want a working example. Here's one in prod:

    Metabase is a BI tool, backend written mostly in Clojure. Like basically all BI tools they have this intermediate representation language thing so you write the same thing in "MBQL (metabase query language)" and it theoretically becomes same query in like, Postgres and Mongo and whatever. End user does not usually write MBQL, it's a service for the frontend querybuilding UI thing and lots of other frontend UI stuff mainly in usage.

    Whole processing from MBQL -> your SQL or whatever is done via a buncha big-ass transducers. Metabase is not materially faster than other BI tools (because all the other BI tools do something vaguely similar in their langs) but it's pretty comparable speed and the whole thing was materially written by like 5 peeps

    https://github.com/metabase/metabase/blob/master/src/metabas...

    (nb: I used to work for Metabase but currently do not. but open core is open core)

  • injest

    +>, +>>, x>>, =>>: Auto-transducifying, auto-parallelizing path thread macros

  • joinr pointed out this lib to me and it seems to make using them more ergonomic (if you're into pipelining)

    https://github.com/johnmn3/injest

    However writing your own indeed doesn't sound fun :))

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts