Search found 68 matches
- Thu Mar 30, 2017 4:33 pm
- Forum: Co_
- Topic: Co_Routines Support for Oberon
- Replies: 90
- Views: 636683
Re: Co_Routines Support for Oberon
The only reason to use ConvertThreadToFiberEx is to use FIBER_FLAG_FLOAT_SWITCH. In Co_Api module I was performing some experiments on this flag, and it is set to 0 in my current version. Setting this flag results in creating fibers failure on several old (and, maybe, new) platforms. They say, that ...
- Thu Mar 30, 2017 10:24 am
- Forum: Co_
- Topic: Co_Routines Support for Oberon
- Replies: 90
- Views: 636683
Re: Co_Routines Support for Oberon
Josef, I am using primary:=ConvertThreadToFiber(0) to create primary fiber for current thread and CreateFiber for each coroutine. ConvertThreadToFiber is necessary, because only fibers can execute fibers according to MSDN. On CLOSE ConvertFiberToThread is mandatory. I have no information about Fiber...
- Thu Mar 30, 2017 10:22 am
- Forum: Feature
- Topic: Coroutines
- Replies: 1
- Views: 10141
Re: Coroutines
There was one another implementation of BlackBox Cooperative Multitasking - Tasks subsystem by Ilya Ermakov. He mentioned it on russian forum https://forum.oberoncore.ru/viewtopic.p ... 219#p89919. It was not published.
- Thu Mar 30, 2017 8:15 am
- Forum: Co_
- Topic: Co_Routines Support for Oberon
- Replies: 90
- Views: 636683
Re: Co_Routines Support for Oberon
You can type Co.Transfer(another) . Nothing prevents you. And you return data not to calling point, but to other side. Just if you ask Mary an apple but get project plan from Boss. The same situation, if you use subroutines, is guaranteed by compiler. Subroutine calls are placed in stack by FILO dis...
- Thu Mar 30, 2017 6:29 am
- Forum: Co_
- Topic: Co_Routines Support for Oberon
- Replies: 90
- Views: 636683
Re: Co_Routines Support for Oberon
Directed Coroutines syntax . Directed coroutines are used in various languages as generators. Coroutines compiler support (in Python, Lua, etc) affords subroutine-like style. Coroutine Transfer is like subroutine call, coroutine Yield is like RETURN. The C-like syntax with compiler support is below...
- Wed Mar 29, 2017 7:40 pm
- Forum: Co_
- Topic: Co_Routines Support for Oberon
- Replies: 90
- Views: 636683
Re: Co_Routines Support for Oberon
Types of Co_Routines (More about types http://www.softpanorama.org/Lang/Asmorama/coroutines_in_assembler.shtml ). Either of technologies used perform context switching. Cocall instruction directs control to other Co_Routine. We use Transfer command to cocall. In the Fig: co3.png we see cocalls betw...
- Wed Mar 29, 2017 6:55 pm
- Forum: Co_
- Topic: Co_Routines Support for Oberon
- Replies: 90
- Views: 636683
Re: Co_Routines Support for Oberon
types.png Types of Tools. Co_Tasks module introduce the basic types for tools, providing pseudo-parallel execution. In is derived from C.Szyperski "Insight-EthOS" where the relations between entities below were defined (Fig: types.png). Task is the most lightweight form, Coroutine contain...
- Wed Mar 29, 2017 6:06 pm
- Forum: Co_
- Topic: Co_Routines Support for Oberon
- Replies: 90
- Views: 636683
Co_Routines Support for Oberon
This topic deals with Co_ subsystem: Co_Routines cross-platform support for Oberon. It was developed in 2014 and has public domain licence. The CPC version for BlackBox is http://www.zinnamturm.eu/downloadsAC.htm#Co_ . The cross-platform collection is http://sourceforge.net/projects/ta1/files/co2.0/...