|
Re: Still No Spaces/Scale-Out/XTP possible in Scala?
|
Posted: Oct 11, 2009 6:27 PM
|
|
There is a fairly old, unfinished project on java.net that I created, at http://griddle.dev.java.net. It is a tuple space that is based on the JavaSpaces API model, but has a couple of fundamental differences. First, keys are wrapped in a class which has a comparison/matching method on it that you provide. Data is separate from this class. The intent is that the key wrapper class would be something that would change very seldomly so that you don't get into problems associated with live code that JavaSpaces tries to completely avoid by using custom serialization and marshalled objects. <p> Data is separate from the keys so that it can be marshalled and stay that way. However, no explicit marshalling is done for you, you have to do all of that. Thus, in small, dedicated applications, you can choose to do whatever level of live objects you need. <p> There is iterator support so that you can make a query and poll it forever to get all matches. There is an executor facility that lets you put live code into the space. The executor "add" to the space returns an iterator implementation so that there is no difference in how you use the space with executors vs queries. <p> I put this together in a pretty short amount of time to give people a way to look at iterators and executors when the JavaSpaces05 implementation discussion was going on. <p> I've not put it into production use, but have played with it at length and tried to make it as functional as I could at demonstrating all the features. <p> The inclusion of the matching method in the class might make it play with Scala much more readily.
|
|