ProjectZetta / RemoteFutures

Remote execution of futures in a distributed system.
http://remotefutures.org
Other
4 stars 1 forks source link

Spores integration #6

Closed MartinSenne closed 10 years ago

MartinSenne commented 10 years ago

Spores Repository is located at https://github.com/heathermiller/spores/tree/master/src/test/scala/scala/spores

Pickling Repository is located at https://github.com/scala/pickling

ghost commented 10 years ago

Added Pickling to SBT and a tiny test case to main class. See latest commit.

Spores, however, I cannot find them anywhere. I did a search on Scala 2.11 code, maven central and sonartype....

Still trying to get my head around this.

MartinSenne commented 10 years ago

I think, adding the code from heather's repository directly to our source (while referencing and maintaining the license) should be fine.

"... trying to get my head around this ...." .... You mean that macro stuff?

ghost commented 10 years ago

Well,

I try to get my head around how to tackle the scope problem. There are some concerns about the proposed spore syntax considering scope capturing. Heather acknowledge this issue on the spore github page and has introduced a new keyword.

I've already cloned the Spore repo in order to figure out if spores a good solution or if they are too premature in the current stage. On the other hand, just using a plain old object that extends Serializable and encapsulates the code would do exactly the same job in terms of capturing the complete scope for serialization but without spores.

The actual problem is not so much capturing what's inside but those odd referneces to other functions. All the details are on the strangeloop slides:

https://speakerdeck.com/heathermiller/spores-distributable-functions-in-scala

Also, the most relevant key point about spores are spore-parameters. At the end, so one deploys a remote function only once remotely and send serialized parameters over the wire permanently. The gain of speed is more or less depending on the serialization speed and network latency but it already reduces traffic which is always good.

Point is, I need to dig more into it; a lot more because getting scope capturing and serialization right at the beginning safes a lot of headache later on.

That was meant by getting my head around /-0

ghost commented 10 years ago

Can we close this issue?

Spores are integrated, sort of.

MartinSenne commented 10 years ago

Obsolete with https://github.com/DistributedRemoteFutures/DistributedRemoteFutures/pull/18