Live data from Hacker News

Tuple Space (2014)

wiki.c2.com

41–50 of 56 posts

Re: Tuple Space (2014)

#41

Earlier quoted context omitted.

Primary problem: Distribute work on heterogenous data across a cluster of heterogenous processes. Add new processes (either additional workers or additional capabilities) by attaching them to the existing shared tuple space. Add new data by wrapping it into a tuple and tossing it into the pile. Add a processor for the new data by having it search for a pattern that picks up the new tuple. Similar concept behind messa…

> Add new data by wrapping it into a tuple and tossing it into the pile In David Gelernter's original work, it's not just data. In Linda, it's possible to put Objects in, which are little executable (`eval` in Linda terms) which a processor can manipulate through whatever interface the tuple type exposes.

This exactly. Sadly the idea went through a low pass filter and just became a way to pass around dumb data objects.

Re: Tuple Space (2014)

#42

One of the inventors of the original Tuple Spaces idea was David Gelernter. He was actually targeted by the Unabomber, and survived but was heavily hurt ( https://www.nytimes.com/1995/05/21/magazine/the-unabomber-an... ). David was a brilliant researcher, with lots of great ideas including Mirror Worlds ( https://en.wikipedia.org/wiki/Mirror_Worlds ). I sometimes wonder if what the Unabomber did to him in early 90s s…

Mirror Worlds (the book) is a great read. I have it on my shelf next to his other book, Machine Beauty. I didn't know he was a victim of the Unabomber, that's unfortunate.

Re: Tuple Space (2014)

#43
post #18

Earlier quoted context omitted.

It does look like just another bloated SPA, but Federated Wiki was a geniune advance when Ward was developing it a decade ago. Still is. Shame it hasn't caught on. I agree it was a mistake to move the existing c2 content into it. Maybe a better try was to start a new wiki of some kind. But the temptation to leverage the existing site to launch Federated Wiki is understandable.

No offense, but how is it an advance? Who needs a wiki that can't be edited? (If I'm mistaken about this, maybe someone can educate me)

The federated wiki concept is that you run your own wiki, and replicate, or "fork" content from other federated wikis to yours.

Re: Tuple Space (2014)

#44

Earlier quoted context omitted.

It's a way of doing massively parallel computations in a scatter/gather system. I suggest looking up the paper "Linda in Context. I'd provide a link but I'm on my phone.

Here you go (not on mobile): https://dl.acm.org/doi/10.1145/63334.63337 (free access)

Also worth reading are the "Linda Letters" from Communications of the ACM, October 1989, vol 32, no 10, p 1244. I found an excerpt at https://web.archive.org/web/20160901000000*/https://www.cyph..., starting on page 4 of the PDF

Re: Tuple Space (2014)

#45
post #18

Earlier quoted context omitted.

It does look like just another bloated SPA, but Federated Wiki was a geniune advance when Ward was developing it a decade ago. Still is. Shame it hasn't caught on. I agree it was a mistake to move the existing c2 content into it. Maybe a better try was to start a new wiki of some kind. But the temptation to leverage the existing site to launch Federated Wiki is understandable.

No offense, but how is it an advance? Who needs a wiki that can't be edited? (If I'm mistaken about this, maybe someone can educate me)

If you know git: a federated wiki works like that. To make a federated wiki work like a traditional wiki, you can think of there as being a "canonical copy" which you can clone, make edits, and then use a 'pull request' process for incorporating those edits back into the original. But you also don't need to have a single source of truth: you can, for example, have a group of people—say, students studying for a class—who are building their own wikis, and among each other they can copy in pages, make changes, copy changes back, and so forth, all building a web of things. In the same way that git can replicate a subversion-like workflow but also introduces the possibility of different workflows, a federated wiki can replicate a traditional wiki but also has a number of workflows it can accomplish.

Re: Tuple Space (2014)

#46
post #35

Earlier quoted context omitted.

Just coordinating the 1:1 mapping I might want is fraught with challenges. Network delays, out-of-order execution, stampeding herd situations, poison objects, processors crashing (or being rebooted) at random times... I'm not seeing the benefit of a "bag" of objects to be processed whenever by whoever or whatever. Perhaps this is attempting to solve a problem I've not come across. While it sounds interesting, I'm not…

Somehow this model works to build complex organisms in embryology...

Still have a problem with viruses, though...

Re: Tuple Space (2014)

#47
post #4

For a long time I toyed with the idea of implementing a tuple space as a pub/sub mechanism for system alerts. I tried to get Java Jini, specifically JavaSpaces which was inspired by Linda, up and running a long time ago as a hobby project, but it seemed like it had been long-neglected even then and my limited knowledge of the JVM world left me stranded.

I implemented something like this! The Dr. Lojekyll [1] datalog system was built around the idea of inputs as receiving messages over time, and publishing outputs (also as messages) or responding to queries (using materialized views). It worked quite well, but it's differential nature ended up being the downfall for the usecase we had in mind.

Specifically, it had no way to "extend" its consistency model out to consumers of its messages, and so if consumers were also producers, then this distributed system as a whole could enter into a state where parts of it are lying to itself!

Otherwise, there were some really fun things you could do with it. For example, we could have per-client databases that would bring themselves up-to-date given the differential outputs of the server database. This would let you engage in a kind of manual sharding of data.

[1] https://www.petergoodman.me/docs/dr-lojekyll.pdf

Re: Tuple Space (2014)

#48
Tuple spaces implementations and their efficiency - 2016

https://arxiv.org/pdf/1612.02979.pdf

> SUMMARY

> Among the paradigms for parallel and distributed computing, the one popularized with Linda, and based on tuple spaces, is one of the least used, despite the fact of being intuitive, easy to understand and to use. A tuple space is a repository, where processes can add, withdraw or read tuples by means of atomic operations. Tuples may contain different values, and processes can inspect their content via pattern matching. The lack of a reference implementation for this paradigm has prevented its widespread. In this paper, first we perform an extensive analysis of a number of actual implementations of the tuple space paradigm and summarise their main features. Then, we select four such implementations and compare their performances on four different case studies that aim at stressing different aspects of computing such as communication, data manipulation, and cpu usage. After reasoning on strengths and weaknesses of the four implementations, we conclude with some recommendations for future work towards building an effective implementation of the tuple space paradigm.

Re: Tuple Space (2014)

#49
post #23

"This site uses features not available in older browsers." It is difficult to express the degree of my frustration with C2 being rewritten from a gunmetal HTML page that worked everywhere into an inaccessible heavyweight SPA mess with a frankly bizarre UI.

Let them know.

I did (last year). Ward Cunningham basically told me to GTFO (not quite so directly, but that's the impression I got from him).

Re: Tuple Space (2014)

#50
post #49
post #23

Earlier quoted context omitted.

Let them know.

I did (last year). Ward Cunningham basically told me to GTFO (not quite so directly, but that's the impression I got from him).

That's interesting. I just looked again and I had exactly the same problem for this same site and raised it a couple of years ago as well. The same guy, Ward Cunningham, sent me the text of the page but was otherwise not receptive to my plaint (but wasn't rude). I guess if enough people (more than two anyway) start complaining maybe he'll listen.

I do share your frustration with clever shit over basic usability. Flipside is, I guess, Cunningham isn't your average guy. But I think lesser mortals are still allowed to disagree.

Anyway, thanks for actually complaining instead of just moaning and doing nothing like so many others on the web.

Post reply on HN