Back in D after some absence, some perspective

Stefan Koch uplink.coder at googlemail.com
Wed Mar 10 23:56:24 UTC 2021


On Wednesday, 10 March 2021 at 23:29:21 UTC, Basile B. wrote:
> On Wednesday, 10 March 2021 at 21:06:52 UTC, Stefan Koch wrote:
>> On Wednesday, 10 March 2021 at 20:17:57 UTC, Max Haughton 
>> wrote:
>>> Is that realistic for dmd?
>>
>> Let me say it like this.
>> I think It is more realistic than giving up on dmd.
>
> I only have questions about that idea of co-routines.
>
> - would this really solve issues ?
> - what is the idea on how to drive the co-routines ?
>    - launch blindly new ones when the PASS value of a node is 
> not sufficent ?
>      and if so, how would that give different results of what 
> is done actually ?
>    - dont you rather think that this should be driven by a 
> system of graph to
>      determine the right order ?
> - are there compilers for other other languages that are 
> forward and implement this
>   kind of "next gen" way of driving the semantic ?
>
> There need to be some kind of proof showing the benefit. Pick 
> an example an describe what is done for now, why this does not 
> work then describe why this would work better with fibers.

Just look at sdc if you want to have an example of what's better.
The main benefit of fibers is not that they magically resolve all 
the ordering issues,
the main benefit it that they allow you to cleanly suspend the 
resolving process and continue at a later time when it's 
dependencies are resolved.
The graph still needs to be explored and analyzed by the 
scheduler.

JAI uses a similar structure. called "queued".
Which essentially serve as scheduling units.

The issue it would surely resolve "right away" is the one of 
shared state and leakey managed context/scope. Since for fibers 
to work all the state has to be determined by the fiber stack.



More information about the Digitalmars-d mailing list