Existing stuff from outside of mainstream is exactly what you should be
digging into.
On Apr 12, 2013 12:08 PM, "John Pratt" <[email protected]> wrote:

>
> 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 <
> [email protected]> 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 <[email protected]>wrote:
>>
>>> On Wed, Apr 10, 2013 at 5:35 AM, Tristan Slominski <
>>> [email protected]> 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
>>> [email protected]
>>> http://vpri.org/mailman/listinfo/fonc
>>>
>>>
>>
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
>
>
>
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
>
>
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to