-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plans to continue the development? #1
Comments
I don't know anything about MetaPrl, nor about its distributed refiner. Last time I worked with Nuprl was in 1990, so ..... I'm glad you're trying to use Ensemble! It's a lovely piece of code, and the reason I found all the old versions and put them online, was so that others could use them. Are you saying that it doesn't build? That's a little surprising -- I know I built it back in 2013. |
as what I got with OCaml 4.11, when it reach the ML interface files under I get the
since I do run it on OS X. |
I don't know anything about the OS X issue, but your error-message sounds like the typical "two processes binding to the same port" problem. Ensemble had two ways for processes to intially learn of each others' existence: (1) explicit listing of address/ports (I forget exactly how this worked) and (2) running "gossip" servers. I'm still curious why you need Ensemble? If MetaPrl uses Ensemble for RPC-based distributed proof-checking, might it not be easier to just use some other existing RPC system (like Thrift)? |
Ok, seem I figure that out, after fall back to the usocket library the Metaprl's distributed refiner features arbitrary process can join/leave during refining, I don't think this is possible with any other RPC system? do they? |
Tyically RPC systems don't support this. But you could always write a simple "directory server" using Thrift (that would keep track of the currently-alive set of processes, and their addresses) and a client that wanted to distribute some proof-obligations, could look up the current set of servers .... Sure, it's not quite as nice as Ensemble, but then, Ensemble is a -lot- of code. |
That's ok, I think with just core Ensemble it is the scale that I can handle. From what currently I know about metaprl's refiner:
|
I start try to work on bring back the distributed refiner for metaprl (it is annoying a single OCaml program can not run on multiple processors). The latest version here seems has the building dependency broken and I don't have enough experience with
make
to fix them in place so I started reconstruct the directory organization with OMake https://github.com/LdBeth/ensemble . Don't know if these provides helps to you, but I made some attempts to fix the byte string conversion issue and cleaned up some hacks (for example sets of operators like=||
>||
>=||
are defined to specialize operation on int type) and aims to have a minimal version that can be used by metaprl.The text was updated successfully, but these errors were encountered: