Comments on Sept Meeting Notes
dherman at mozilla.com
Fri Sep 27 09:51:17 PDT 2013
On Sep 27, 2013, at 9:07 AM, David Bruant <bruant.d at gmail.com> wrote:
> I agree with the intent of keeping semantics of inter-worker and inter-machine very close, but the difference in terms makes very clear that not being able to differenciate the 2 cases incurs an information loss that can be detrimental to some use cases, especially performance-related ones.
Yeah, I worry about chasing after that holy grail of fully transparent distribution, which IMO is in the list of misbegotten CS fantasies, up there with fully automatic parallelization and human-level AI.
More to the point: as I see it, unique symbols are, like File objects and ArrayBuffers, an ephemeral construct that can only be managed within a single VM/computer. GUIDs are a fine thing to use for messaging protocols between computers in a distributed setting, but I see nothing wrong with an additional marshalling/unmarshalling layer being required to make that work. And I'm skeptical of such a layer being automatically managed by the language (probably for a similar reason to one of the things Mark hates about structured clone: the magic built-in behavior hard-wired to special built-in types).
That said, I could still imagine that if we had a solution for allowing handshaking between workers without them sharing state (which AIUI was Mark's issue with the registry strawman I suggested in this thread), that a similar mechanism could be useful for handshaking between computers: while user code would still manage the JSON encoding of symbolic names (e.g. by name mangling schemes), the unmarshalling side could then make sure to locally register the GUID with a symbol.
More information about the es-discuss