Is there any way that Closure/Static could be factored into a separate package?

Description

Perhaps this is too much to hope for, but it would be ideal for packages such as meta-par, HDpH and distributed-process to be able to share basic RPC functionality (Closure/Static).

With meta-par we copied and hacked a version of the original Cloud Haskell ("Remote") Closure. The ugly bit was that it had hard-coded recognition of the IO and ProcessM monads, and we had to tweak that to include monad-par's "Par" monad.

I don't understand the current Closure implementation, but it looks like it may be the case that CP.hs (the part that deals with Process values) is pretty well isolated from the rest. Does that mean that everything but CP.hs could become its own package?

It looks like TH.hs also deals with Process presently. TH.hs would either need to be replicated in all consumers of the hypothetical factored library, or it would need to become more extensible. When we were using the Closure mechanism in monad-par/meta-par this was the sticking point – we didn't see a way to do it without adding extra arguments to the compile-time TH functions (e.g. remotable), which would be very ugly.

Any good ideas here?

Environment

None

Activity

Show:
Anonymous
April 22, 2015, 1:03 AM
Anonymous
April 18, 2015, 5:10 PM

A large percentage of excellent two of [url=http://www.wowruler.com/]fastest wow gold/url I truly buy. My wife and i extraordinarily s[url=http://www.wowgoldgroup.com/]buy wow gold/urlest that you find the mind package along with them! They begin to sleep in very good condition in stormy Washington Area.

Anonymous
April 10, 2015, 7:13 PM

[url=http://www.gamesky.com.au/]safest wow gold/url is very great and practical.

Anonymous
April 7, 2015, 12:04 PM

<a href=http://tomsaustralia.wosba.org/>toms shoes in australia</a>
asics singspore sale http://asicssingapore.mennosource.org/

Tim Watson
February 6, 2013, 11:23 AM

Thanks Rob - I'll start watching that one.

Assignee

Tim Watson

Reporter

Ryan Newton

Labels

None

External issue ID

None

OS

None

Priority

Major