On Wed, 2007-04-18 at 04:23 +1000, skaller wrote:
> On Tue, 2007-04-17 at 10:24 -0400, Chris King wrote:

> Stackless Python has been able to do that for ages. Generators
> are based on it, but they didn't go the whole way for the
> same reason Felix can't interleave function execution:
> the C stack gets in the way.

To say this another way: Felix functions and C functions can
nest inside each other, that is, C code called BY Felix can
happily call Felix functions which call C functions .. etc.
So the machine stack has alternate layers of C and Felix stack.

You can't do this with fibres. More precisely C can
embed a complete Felix system in a callback, but that
system can't communicate with other such systems:
by that I mean you can't use channels to interleave
control and pass data outside the local fibre set.
You can of course use shared memory, pthreads,
pchannels, and async I/O streams.

[BTW: schannels, pchannels, and async I/O streams
should be unified by Felix 1.1.4]


-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Felix-language mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to