[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: ANN: Lua OS 0.4
- From: Stefan Reich <stefan.reich.maker.of.eye@...>
- Date: Tue, 16 Aug 2011 15:59:32 +0200
Jo... I just made a reference manual for Lua OS 0.4 that might answer
these questions: http://luaos.net/docs/safelua-api.html
I am going for a very simple message format here. Each message has a
recipient, a command (string) and some data (a Lua table without
anything irregular like functions, userdata or recursion).
This should allow you to do whatever you want... :o)
Stefan
PS: BeOS was nice (I totally loved it back in the day), but it's
probably a completely different beast as it's C++-based (if I remember
correctly) and not script-centric.
We really have something new here: a completely script language-based
OS is a whole new thing in terms of how you program for the system.
On Tue, Aug 16, 2011 at 3:15 PM, Terry Bayne <trbayne@gmail.com> wrote:
> Sounds interesting. What type of message passing architecture is in place?
> Possibly a tagged format like what was used by BeOS? I found that
> particular format very flexible/adaptable.
>
> Flexible enough that I have used MUSCLE
> (https://public.msli.com/lcs/muscle/index.html) messages (which emulate the
> BeOS Messages) as the basis of the message architecture used in all my
> multi-threaded code in the last 7 years or so.
>
> Just a thought.
>
> Terry
>
> On Tue, Aug 16, 2011 at 05:57, Stefan Reich
> <stefan.reich.maker.of.eye@googlemail.com> wrote:
>>
>> There are no locks in Lua OS. My model also not threading in the
>> classical sense (different threads working on the same data - the
>> model that leads to the well-known problems). I once held a talk about
>> the evils of multithreading, so I very clearly am sure to avoid that.
>>
>> The model is basically: event loops (on the sandbox level) plus
>> communicating processes (on the next-higher level).
>>
>> Thus there is never any concurrent action on the same data. Each
>> strain of execution has its own data. All communication is by message
>> passing.
>>
>> Does that satisfy your question...?
>>
>> Cheers,
>> Stefan
>>
>> On Tue, Aug 16, 2011 at 8:20 AM, Michael Richter <ttmrichter@gmail.com>
>> wrote:
>> > Might you consider a concurrency model that isn't the classic
>> > threads+locks?
>> >
>> > On 16 August 2011 05:25, Stefan Reich
>> > <stefan.reich.maker.of.eye@googlemail.com> wrote:
>> >>
>> >> Attention, People of the Moon!
>> >>
>> >> Lua OS 0.4 is here! Looots of progress!! And this time, it runs on
>> >> Windows.
>> >>
>> >> New features in 0.4:
>> >>
>> >> A unified application running the Java frontend + the Lua backend
>> >> Full system hibernation (this is still experimental and quite
>> >> certainly buggy)
>> >>
>> >> More info & download here: http://LuaOS.net/luaos-0.4.php
>> >>
>> >> Oh, and BTW: Actual preemptive multitasking is underway. I've seen it
>> >> work, but there's some issues to take care of as per usual in these
>> >> bitchy multithreaded projects.
>> >>
>> >> Thus, threads are not yet enabled in this version. In Lua OS 0.4
>> >> everything's cooperative (coroutines). Implementing everything is much
>> >> simpler that way, and we don't really lose anything in terms of power
>> >> of the platform. Preemptive multitasking is more like an optimization
>> >> than an actual feature. Since we have protection against endless loops
>> >> anyway :D
>> >>
>> >> Cheers -
>> >> Stefan
>> >>
>> >
>> >
>> >
>> > --
>> > "Perhaps people don't believe this, but throughout all of the
>> > discussions of
>> > entering China our focus has really been what's best for the Chinese
>> > people.
>> > It's not been about our revenue or profit or whatnot."
>> > --Sergey Brin, demonstrating the emptiness of the "don't be evil"
>> > mantra.
>> >
>>
>
>