I feel like these discussions are tangential to the larger issues
brought up on FONC and just serve to indulge personal interest
discussions.  Aren't any of us interested in revolution?  It won't
start with digging into existing stuff like this.


On Apr 12, 2013, at 11:13 AM, Tristan Slominski wrote:

> oops, I forgot to edit this part:
> 
>  and my criticism of Lightweight Time Warps had to do with that it is a 
> protocol for message-driven simulation, which also needs an implementor that 
> touches "reality"
> 
> It should have read:
> 
> and my criticism of Lightweight Time Warps had to do with that it is a 
> protocol for message-driven simulation and (I think) actors are minimal 
> implementors of message-driven protocols
> 
> 
> On Fri, Apr 12, 2013 at 1:07 PM, Tristan Slominski 
> <tristan.slomin...@gmail.com> wrote:
> I had this long response drafted criticizing Bloom/CALM and Lightweight Time 
> Warps, when I realized that we are probably again not aligned as to which 
> "meta" level we're discussing. 
> 
> (my main criticism of Bloom/CALM was assumption of timesteps, which is an 
> indicator of a meta-framework relying on something else to implement it 
> within "reality"; and my criticism of Lightweight Time Warps had to do with 
> that it is a protocol for message-driven simulation, which also needs an 
> implementor that touches "reality"; synchronous reactive programming has the 
> word synchronous in it) -> hence my assertion that this is more "meta" level 
> than actors.
> 
> I think you and I personally care about different things. I want a 
> computational model that is as close to how the Universe works as possible, 
> with a minimalistic set of constructs from which everything else can be 
> built. Hence my references to cellular automata and Wolfram's hobby of 
> searching for the Universe. Anything which starts as "synchronous" cannot be 
> minimalistic because that's not what we observe in the world, our world is 
> asynchronous, and if we disagree on this axiom, then so much for that :D
> 
> But actors model fails with regards to extensibility(*) and reasoning
> 
> Those are concerns of an imperator, are they not? Again, I'm not saying 
> you're wrong, I'm trying to highlight that our goals differ.
> 
> 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. 
> 
> Again, this is ignorance of the power of Object Capability and the Actor 
> Model itself. The above is forbidden in the actor model unless the 
> configuration explicitly sends you an address in the message. My earlier 
> comment about Akka refers to this same mistake.
> 
> However, you do bring up interesting meta-level reasoning complaints against 
> the actor model. I'm not trying to dismiss them away or anything. As I 
> mentioned before, that list is a good guide as to what meta-level programmers 
> care about when writing programs. It would be great if actors could make it 
> easier... and I'm probably starting to get lost here between the meta-levels 
> again :/
> 
> Which brings me to a question. Am I the only one that loses track of which 
> meta-level I'm reasoning or is this a common occurrence  Bringing it back to 
> the topic somewhat, how do people handle reasoning about all the different 
> layers (meta-levels) when thinking about computing? 
> 
> 
> On Wed, Apr 10, 2013 at 12:21 PM, David Barbour <dmbarb...@gmail.com> wrote:
> 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 mailing list
> fonc@vpri.org
> http://vpri.org/mailman/listinfo/fonc

_______________________________________________
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc

Reply via email to