send actors/agents, not requests!

31 views
Skip to first unread message

Raoul Duke

unread,
Jun 4, 2014, 1:40:53 PM6/4/14
to PiLuD
what programming system has best embodied that? it feels to me like a
penultimate version of "tell, don't ask" a la alan holub etc.

David Barbour

unread,
Jun 4, 2014, 3:44:09 PM6/4/14
to pi...@googlegroups.com
Do you mean to generally send an actor or agent (or script, etc.) that then manipulates a specific API on your behalf? Or do you mean to send an actor or agent as an argument to specific methods of an API? 

The first is perhaps embodied by kell calculus [1] and is an approach I utilize in RDP. The second by actors model and OOP.


Raoul Duke

unread,
Jun 4, 2014, 4:45:48 PM6/4/14
to PiLuD
thanks!

i mostly meant the former, since the latter is sorta run of the mill
these days in some sense (even if not fully/well enough).

in general i think the more mind-bending vs. the status-quo would be
the sending of agents as entities to go forth and do something
somewhere else, as some migrating active agents.

anybody know of any great practical examples/uses of such a thing? i
will go do some web searching and see what turns up...
> --
> You received this message because you are subscribed to the Google Groups
> "PiLuD" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to pilud+un...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pilud/CAAOQMSs0FmqiTxwVpACkdVdyy6ncMsreQiyZ%2B%2BFdkJ7BisbrHg%40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.

David Barbour

unread,
Jun 4, 2014, 5:45:49 PM6/4/14
to pi...@googlegroups.com
On Wed, Jun 4, 2014 at 3:45 PM, Raoul Duke <rao...@gmail.com> wrote:
in general i think the more mind-bending vs. the status-quo would be
the sending of agents as entities to go forth and do something
somewhere else, as some migrating active agents.

anybody know of any great practical examples/uses of such a thing? i
will go do some web searching and see what turns up...

There are a lot of use-cases for mobile or distributed agents: 

* filtering/summarizing/compressing a results set on server-side to save bandwidth
* map-reduce; combine ad-hoc results sets at distributed nodes for massive parallelism
* disruption-tolerant systems where agents might operate autonomously for some time
* overlay networks, service extension, protocol and API abstraction
* remote decision making to reduce latency and other transport costs

Really, support for rich code distribution is half the motivation why I got involved with language design. 

But I've learned there are many gotchas. 

In conventional languages, we get features like process control (ability to kill an app) for free, due to the OS process model (orthogonal to the programming model). Similarly, we can stop an app, update the code, then restart it - thus supporting maintenance, debugging, administration, and upgrade. In a distributed system, these features cannot readily be assumed. Other big concerns include security, simplicity, partial failure and system resilience.

RDP and Awelon largely grew out of trying to solve such peripheral problems. 

Raoul Duke

unread,
Jun 4, 2014, 6:27:57 PM6/4/14
to PiLuD
w00t.
> --
> You received this message because you are subscribed to the Google Groups
> "PiLuD" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to pilud+un...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pilud/CAAOQMSuLR2h6QFOPBuwQ6QkftVT4%3DRhrYFcLOfE9Qr9RYhnXMw%40mail.gmail.com.

Raoul Duke

unread,
Jun 6, 2014, 4:33:50 PM6/6/14
to PiLuD
random link, a little discussion, some folks doing some simple mobile
actor design: https://groups.google.com/forum/#!topic/agilewikidevelopers/nX8l-NrU4y4
Reply all
Reply to author
Forward
0 new messages