You can check the latest sources with the command:
hg clone https://code.google.com/p/scoop/
Bear in mind that this development code may be partially broken or unfinished. To get a stable version of the code, update to a release tag using hg update <tag name>.
Most of those conventions are base on Python PEP8.
A style guide is about consistency. Consistency with this style guide is important. Consistency within a project is more important. Consistency within one module or function is most important.
Same as PEP8.
Standard library imports must be first, followed by SCOOP imports and finally custom modules. Each section should be separated by an empty line as such:
import system from scoop import futures import myModule
Same as PEP8.
Same as PEP8
If a name already exists in the standard library, an underscore is appended to it. (ie. a custom range function could be called range_. A custom type function could be called type_.)
Here are the message types from the point of view of a broker. Message coming from workers are always from their Task socket.
|INIT||Task||Handshake from a worker: allows a broker to recognize a new worker and propagate the currently shared variables.|
|CONNECT||Task||Addresses||Notify a broker of the existence of other brokers.|
|REQUEST||Task||Worker requesting task(s).|
|TASK||Task||Task||A task (future) to be executed.|
|REPLY||Task*||Task, Destination||The result of a task to be sent to its parent. Communicated directly between workers if possible.|
|SHUTDOWN||Info||Request a shutdown of the entire worker pool.|
|VARIABLE||Info||Key, Value, Source||A worker requested the share of a variable. The broker propagates it to its fellow workers.|
|TASKEND||Info||askResult, groupID||A collaborative task (scan, reduce, etc.) have ended, memory can be freed on workers.|
|BROKER_INFO||Info||Propagate information about other brokers to workers.|