[Stackless] lua vs. stackless python

Phoenix Sol phoenix at burninglabs.com
Thu Apr 23 21:27:36 CEST 2009


Stackless's 'tasklets' weigh only a few kilobytes a piece; what does a lua
coroutine weigh?

Stackless, going from my limited understanding here, is not 'actually
stackless' at all -- but by manipulating the C stack, allows dynamic
switching between (arbitrary?) frames.  I have read that lua is 'literally
stackless', and does not use a C stack at all... correct?  Please,
scientists and engineers, tell me what this means to me...

Stackless has 'channels' which allow for 'communicating sequential
processes', and provide a very useful scheduling paradigm that (seems to)
blend nicely with the default 'round robin' behaviour of the stackless
scheduler; does lua provide an answer to this? If not, would'nt it be fairly
trivial to implement?

Stackless has access to Python's massive standard library, plus a huge
'commonwealth' of contributed code to use besides; where lua does not appear
so well endowed yet... this has intimidated me for a while, and kept lua 'on
the back-burner', but is it really much of a problem, since apparently it's
an easy matter to use all of that nice Python code from lua anyway?
(If I start using 'lunaticpython', with stackless, will I get the best of
both worlds? Or just a big headache?)

Regarding speed, vm size, ease of embedding and extending, and simplicity,
lua is the clear winner, right?

What about stability? Stackless seems to 'hang tough' as a stand-alone, even
a *long-running* process; how does lua compare there?

Really, please share your opinion if you can. And please 'reply to all' so
that both lists can see, and hopefully inspire some dialog (I tend to forget
to 'reply to all' when I mean to ;-).

Want to insult me or whatever personally? Do that here:
phoenix at burninglabs.com.
(And spam me as well, thou evil crawlers... I archive every one, just for
pleasure! ;-)

Thanks!


On Thu, Apr 23, 2009 at 11:15 AM, David Ludwig <dludwig at pobox.com> wrote:

> Stackless Python is a modified version of Python that supports, among
> other things, coroutines.  Normal Python has limited support for
> yielding, but only within generator functions.  At least, that's my
> understanding of things there.  :-)
>
> - David
>
> On Thu, Apr 23, 2009 at 11:03 AM, Javier Guerra <javier at guerrag.com>
> wrote:
> > why stackless?  python is python, i don't see any significant
> > difference between those implementations when comparing to Lua
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.stackless.com/pipermail/stackless/attachments/20090423/c6d12ad8/attachment.htm>


More information about the Stackless mailing list