Skip to content

Develop and Test Async Constructs over Suspensions #16931

Open
@odersky

Description

@odersky

#16739 contains a strawman for an innovative, direct style library of futures and channels based on a postulated suspension construct. An alternative version of this library can be based on coroutines. At present this strawman simply postulates the low-level support needed.

It would be good to flesh this out further and base it on a concrete implementation of coroutines such as the ones provided by project Loom. In particular:

  • Adapt the strawman so that it runs on virtual threads/coroutines
  • Develop realistic examples and test cases
  • Develop benchmarks and identify performance bottlenecks
  • Develop documentation that motivates the new constructs

#16739 also contains an implementation of choice which requires multi-shot continuations. This part of the code base can be left out.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Semester ProjectGood project to be done by an MSc or strong Bsc computer science student in one semesterstat:takenThis project is already worked on by a student or as part of another volunteership program

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions