(This is a follow-up on the recent announcement from Robert on this Flavors work as well as individual conversations not previously on the mail list.)
I like to read the subject as "concurrent programming" with "object-oriented" being a modifying, descriptive phrase ;-) I think I might prefer a different phrase altogether, though: "concurrent programming with models and state".
One of the things that Robert has recently mentioned when talking about Flavors was the possibility of this being a system for concurrent oop, where objects were conceived as safe for a distributed LFE application. Needless to say, I began to froth at the mouth a bit with the prospect of a new area to research in the context of LFE :-)
One of my heroes in the world of concurrency and the actor model is Dr. Gul Agha [1], and he's done a bunch of very interesting research into concurrency and object-oriented systems. His full list of publications is here:
Starting from the bottom up (chronological order), these look good:
I'll stop there ... his papers get more and more interesting. Dr. Agha's research is a goldmine for areas to explore in LFE; had it been available to him when he started his research, I can't even imagine what we'd be doing with it now :-)
Of particular -- and more practical -- interest for me are topics such as:
* the separation of models and the associated data of the models
* approaches to shared data in a functional, share-nothing language
* object instances in a distributed application and their knowledge of each other
* what does distributed inheritance look like
* how do changes in object code propagate to instances
* similarly, changes in parent classes propagating to child instances
* if object data is moved to ETS or Mnesia, how do we redefine garbage collection
Anyway, when Robert brought up the idea of concurrency in objects, it made this whole project seem even more interesting :-) I've got some books ordered from the library, and I expect to be doing a lot of reading on this. I think it would be an enormous amount of fun to provide a sensible syntax for LFE capabilities in the realm of distributed objects, simulations, and their associated data.
d
----
[1] In my EFSF 2014 LFE talk, I quoted an excellent sentiment of his from his PhD thesis:
http://dspace.mit.edu/handle/1721.1/6952. It is a special delight that research for this paper was done at the MIT AI Lab, the original home of Lisp :-)