Community Update 5

Approximate Reading Time: 3 minutes

Arachne design and development is progressing since our last update. Since then, due to time constraints, we sent out a brief 'Interim Update' to the Arachne mailing list, which you can sign up for on our home page,

On Dec 2, Luke gave a talk about Arachne at the Clojure eXchange 2016, which explains some more of the high-level reasoning about Arachne and why the status quo of composing small libraries isn't good enough.

The Steering Group met on Dec 16, when Luke shared that he is ready to announce Arachne's initial alpha release date of Jan 20, 2017.

Yay! But, What does this mean? It means that while not all of Arachne's fundamental work is done, the core work is. It's time to move this project into the public square, where you fine folks can start to play with a documented release of Arachne.

It's worth saying directly: Arachne will be alpha software. Production use would be unwise!

The purpose of this release is to open up the feedback process outside the bubble of the Steering Group and into the hands of the people that matter most – all of you!

This alpha release is primarily to start getting feedback on some of the core design elements, and to enable potential module authors to get started thinking about what and how their own plans might integrate with Arachne. Please be aware that it will not provide the "complete" Arachne experience… there are a lot of convenience modules and higher-level abstractions that have yet to be written. So if the alpha release of Arachne is missing a feature you were counting on, don't despair! It's almost certainly still in the queue for delivery. At the time we release the alpha, we will also publish a roadmap of what our current plans around next steps are.

The codebase will still be under a considerable amount of flux, so please check with us before submitting a large or far-reaching pull request. Eventually, once the core design is quite stable, we hope to reach a point where the majority of changes to Arachne are driven by the community itself.

Luke will be working on documentation between now and the release, as well as refining existing code.

As to design tweaks, Luke has been busy. Chimera has been simplified. Please see ADR-017 for more.

Also, Chimera operations are now extensible and overridable. Luke used core.match to take override expressions from the config and compile them into a fast dispatch mechanism, so that it's now possible to override Chimera's default behavior at a very, very granular level, based even on the content of message payloads. This feature is intended to provide extreme flexibility when porting data to or from a legacy database. Essentially, this provides a short-circuit to the default behavior of entity persistence.

Our next update will likely be in 3 weeks. We will resume our normal update schedule, an update every 2 weeks, after the Holidays.

My best,

P.S. Please tweet me with any ideas you have about Arachne or our Community.