Re: [fonc] Layering, Thinking and Computing
I did not specify that there is only one bridge, nor that you finish processing a message from a bridge before we start processing another next. If you model the island as a single actor, you would fail to represent many of the non-deterministic interactions possible in the 'island as a set' of actors. Ok, I think I see the distinction you're painting here from a meta perspective of reasoning about an actor system. I keep on jumping back in into the message-only perspective, where the difference is (it seems) unknowable. But with meta reasoning about the system, which is what I think you've been trying to get me to see, the difference matters and complicates reasoning about the thing as a whole. I cannot fathom your optimism. I think it's more of a pessimism about other models that leads me to be non-pessimistic about actors :D. I have some specific goals I want to achieve with computation, and actors are the only things right now that seem to fit. What we can say of a model is often specific to how we implemented it, the main exceptions being compositional properties (which are trivially a superset of invariants). Ad-hoc reasoning easily grows intractable and ambiguous to the extent the number of possibilities increases or depends on deep implementation details. And actors model seems to go out of its way to make reasoning difficult - pervasive state, pervasive non-determinism, negligible ability to make consistent observations or decisions involving the states of two or more actors. I think any goal to lower those comprehension barriers will lead to development of a new models. Of course, they might first resolve as frameworks or design patterns that get used pervasively (~ global transformation done by hand, ugh). Before RDP, there were reactive design patterns I had developed in the actors model while pursuing greater consistency and resilience. I think we're back to different reference points, and different goals. What follows is not a comment on what you said but my attempt to communicate why I'm going about it the way I am and continue to resist what I'm sure are sound software meta-reasoning practices. My non-pessimism about actors is linked to Wolfram's cellular automata turing machine ( http://blog.wolfram.com/2007/10/24/the-prize-is-won-the-simplest-universal-turing-machine-is-proved/). My continuing non-pessimism about interesting computation being possible in actors is his search for our universe ( http://blog.wolfram.com/2007/09/11/my-hobby-hunting-for-our-universe/). Cellular automata are not actors, I get that, but these to me are the hints. Another hint is the structure of HTMs and the algorithm reverse engineered from the human neocortex ( https://www.numenta.com/htm-overview/education/HTM_CorticalLearningAlgorithms.pdf). Another hint are what we call mesh networks. And overwhelming consideration across all those hints is unbounded scalability. Cheers, Tristan On Tue, Apr 9, 2013 at 6:25 PM, David Barbour dmbarb...@gmail.com wrote: On Tue, Apr 9, 2013 at 12:44 PM, Tristan Slominski tristan.slomin...@gmail.com wrote: popular implementations (like Akka, for example) give up things such as Object Capability for nothing.. it's depressing. Indeed. Though, frameworks shouldn't rail too much against their hosts. I still prefer to model them as in every message is delivered. It wasn't I who challenged this original guaranteed-delivery condition but Carl Hewitt himself. It is guaranteed in the original formalism, and even Hewitt can't change that. But you can model loss of messages (e.g. by explicitly modeling a lossy network). You've described composing actors into actor configurations :D, from the outside world, your island looks like a single actor. I did not specify that there is only one bridge, nor that you finish processing a message from a bridge before we start processing another next. If you model the island as a single actor, you would fail to represent many of the non-deterministic interactions possible in the 'island as a set' of actors. I don't think we have created enough tooling or understanding to fully grok the consequences of the actor model yet. Where's our math for emergent properties and swarm dynamics of actor systems? [..] Where is our reasoning about symbiotic autopoietic and allopoietic systems? This is, in my view, where the actor systems will shine I cannot fathom your optimism. What we can say of a model is often specific to how we implemented it, the main exceptions being compositional properties (which are trivially a superset of invariants). Ad-hoc reasoning easily grows intractable and ambiguous to the extent the number of possibilities increases or depends on deep implementation details. And actors model seems to go out of its way to make reasoning difficult - pervasive state, pervasive non-determinism, negligible ability to make consistent observations or decisions involving the
Re: [fonc] Layering, Thinking and Computing
On Wed, Apr 10, 2013 at 5:35 AM, Tristan Slominski tristan.slomin...@gmail.com wrote: I think it's more of a pessimism about other models. [..] My non-pessimism about actors is linked to Wolfram's cellular automata turing machine [..] overwhelming consideration across all those hints is unbounded scalability. I'm confused. Why would you be pessimistic about non-actor models when your argument is essentially that very simple, deterministic, non-actor models can be both Turing complete and address unbounded scalability? Hmm. Perhaps what you're really arguing is pessimistic about procedural - which today is the mainstream paradigm of choice. The imperial nature of procedures makes it difficult to compose or integrate them in any extensional or collaborative manner - imperative works best when there is exactly one imperator (emperor). I can agree with that pessimism. In practice, the limits of scalability are very often limits of reasoning (too hard to reason about the interactions, safety, security, consistency, progress, process control, partial failure) or limits of extensibility (to inject or integrate new behaviors with existing systems requires invasive changes that are inconvenient or unauthorized). If either of those limits exist, scaling will stall. E.g. pure functional programming fails to scale for extensibility reasons, even though it admits a lot of natural parallelism. Of course, scalable performance is sometimes the issue, especially in models that have global 'instantaneous' relationships (e.g. ad-hoc non-modular logic programming) or global maintenance issues (like garbage collection). Unbounded scalability requires a consideration for locality of computation, and that it takes time for information to propagate. Actors model is one (of many) models that provides some of the considerations necessary for unbounded performance scalability. But actors model fails with regards to extensibility(*) and reasoning. So do most of the other models you mention - e.g. cellular automatons are even less extensible than actors (cells only talk to a fixed set of immediate neighbors), though one can address that with a notion of visitors (mobile agents). From what you say, I get the impression that you aren't very aware of other models that might compete with actors, that attempt to address not only unbounded performance scalability but some of the other limiting factors on growth. Have you read about Bloom and the CALM conjecture? Lightweight time warp? What do you know of synchronous reactive programming? There is a lot to be optimistic about, just not with actors. (*) People tend to think of actors as extensible since you just need names of actors. But, without invasive code changes or some other form of cheating (e.g. global reflection) it can be difficult to obtain the name of an actor that is part of an actor configuration. This wouldn't be a problem except that actors pervasively encapsulate state, and ad-hoc extension of applications often requires access to internal state [1], especially to data models represented in that state [2]. Regards, Dave [1] http://awelonblue.wordpress.com/2012/10/21/local-state-is-poison/ [2] http://awelonblue.wordpress.com/2011/06/15/data-model-independence/ ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc
[fonc] Statement of Posting on Fonc
It doesn't matter that I am inexperienced in the annals of computer science because the reason why I wrote on this mailing list in the first place is that I share a similar, albeit smaller, experience as Alan Kay setting the conceptual foundation for an industry and then watching people, ignorant of it, start hitting walls because they are only concerned with the direct gains they can glean from the concept rather than its underpinnings as well. In this case, it was smaller than an entire world of computers-- it was just a concept for all-or-nothing collection, by way of collective action. It is also called other names, but the general idea is that people set a goal and if everyone agrees to participate, their participation token (money) is taken from them; if not everyone agrees to participate, their participation never takes place and the token evaporates or is returned to them. At the time we started this, there were certainly people who had thought of it before, but no one had put it into practice or worked out all of the practical realities. It also was founded as a result of studying political science, not playing around with web pages and web programming, strictly speaking. Yet, people today believe that just having the concept and then buying a book on web programming is what allowed us to establish the foundation for an entire Internet phenomenon, for which we get little or no credit (or money, if you are interested in that!). In fact, it took a unique set of backgrounds, unlike those who wish to become the next Facebook. So I am sympathetic to Alan Kay on a number of levels, and while I would never equate myself professionally or academically in terms of university position, I do understand the experience he has gone through more than almost anyone. I also know, more than most, what it is like to witness an entire environment that is totally empty of the concept you are trying to implement, and then just a few short years later witnessing its emergence across the world, to my personal astonishment. It is why I am so confident that people will practice Falun Dafa even though I am one of the first people in the United States to recognize this. I have seen an entire environment go from voidspace on top of the foundation I started, to a total flourishing of what people now deem crowdfunding. But like Kay, I am not mentioned very often, if at all on this topic, even though I drove it. ___ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc