[Openmcl-devel] Announcing Erlangen: asynchronous message passing framework for CCL

Max Rottenkolber max at mr.gy
Wed Dec 7 05:56:28 PST 2016


Hello Clozure fans! :-)

I have been working on this framework for a while, and want to probe for
interest and feedback. Excerpt from the introduction:

  Erlangen brings distributed, asynchronous message passing to Clozure Common
  Lisp. It orchestrates Clozure CL processes (native threads) using message
  passing, and encourages fault tolerant software architectures using
  supervison trees. It is also transparently distributed, all its features work
  seamlessly across IP networks. Thus, it can be used to build applications
  across multiple Clozure CL instances on different hosts.

  [...]

  Clozure CL processes are comparatively heavy weight, preemptively scheduled
  operating system threads, as opposed to Erlang’s cooperatively scheduled
  green threads. As such, processes are a scarce resource on Clozure CL.
  Erlangen is based on the assumption that even with only a limited capacity of
  concurrent processes, message passing and supervision trees are still
  feasible features. While Erlang’s distribution features are sometimes
  overlooked, they are meant to be a main focus of Erlangen.

Erlangen’s home is here:  https://github.com/eugeneia/erlangen#erlangen

(There is also a Reddit thread with a tiny bit of discussion:
https://www.reddit.com/r/Common_Lisp/comments/5gjbqd/erlangen_brings_distributed_asynchronous_message/)

The project is still in its infancy, but I think its in presentable state. Now
is a good time to get some feedback, and I am still open for drastic changes. I
believe that some other people on this list work on similar things, so I am
especially interested in critique from the experts. :-)

As mentioned in the Reddit thread, there are no goals for cross-implementation
portability. I want to spend as little time on portability layers as possible,
and focus on the problems at hand. That might even mean dropping targets other
than Linux.

Again, test-spins and feedback in form of replies, direct mail, or GitHub
issues are welcome!

Cheers,
Max





More information about the Openmcl-devel mailing list