Announcing jiface, clojang, & a Clojure OTP agent

Posted on January 19, 2016 by oubiwann


Blog post image

After all the hacking on the Clojure/LFE/Erlang code – a prototype version of Clojang – it has become clear that Clojang really needs to be split into projects with separate concerns. Firstly, there needs to be a dedicated project for two very distinct aspects of this mini-ecosystem:

  • There should be a low-level Clojure wrapper around JInterface (having to write OTP-interop code using Clojure's Java interop makes for unbelievably ugly code ...). This library should have no opinions about anything, instead simply providing a minimally Clojure-idiomatic wrapper around JInterface.
  • In addition, there needs to be a mid-level API that wrapps jiface and allows one to use even more idiomatic Clojure (and perhaps some LFE-isms, too). This library can have the luxury of being opinionated about how things should be done, including default nodes, mboxes, etc., as well as automatic conversion of Erlang/OTP types.

Finally, there is a bit of functionality that can be broken out into another project, usable by clojang and other higher-level libs that would benefit from some basic OTP conveniences: a Clojure/Java agent that helps set up a default OTP node in Clojure applications.

The home for these projects is here:

Or, individually:

The work started last year on a fork of Arnaud Wetzel'a code, while interesting at first, doesn't really provide a general and open-ended solution that's needed for larger-scale applications. As such, the new version of clojang – as well as its other new sister projects – represents a completely fresh start with no shared code history. This should leave things maximally flexible.

Author oubiwann
Date January 19, 2016
Time 18:42:24
Category Projects
Tags agent announcements clojang clojure erlang java jiface lfe libraries
Line Count 1
Word Count 257
Character Count 2135

Comments?
This blog doesn't use standard (embedded) comments; however, since the site is hosted on Github, if there is something you'd like to share, please do so by opening a "comment" ticket!