libaco
coroutine
libaco | coroutine | |
---|---|---|
3 | 1 | |
3,437 | 2,370 | |
- | - | |
10.0 | 10.0 | |
almost 2 years ago | over 1 year ago | |
C | C | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
libaco
- Show HN: Neco – Coroutine Library for C
- Splitting the stack - is there a library for this?
-
What are the current hot topics in type theory and static analysis?
Coroutines, async/await and general multicore support in the type system. Most languages by now either have some variant of async / await (JavaScript, Kotlin, Swift, Rust) or super-lightweight threads (Go, Elixir, Java via Project Loom), or they just have Monads which supersede coroutines entirely (Haskell, Scala). It's at the point where some say a language isn't suitable for production if it doesn't have good multicore support (also see Rust speeding through getting async/await even though they already have Send + Sync). Even Python and C++ have coroutines now, and of course there is a coroutine library for C which uses macros and low-level magic.
coroutine
What are some alternatives?
val - A small library to bring NaNboxing to C
Akka - Build highly concurrent, distributed, and resilient message-driven applications on the JVM
rfcs - RFC process for Bytecode Alliance projects
fully-homomorphic-encryption - An FHE compiler for C++
eff - 🚧 a work in progress effect system for Haskell 🚧
seL4 - The seL4 microkernel
dafny - Dafny is a verification-aware programming language
egg - egg is a flexible, high-performance e-graph library
FStar - A Proof-oriented Programming Language
Idris2 - A purely functional programming language with first class types
coq - Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semi-interactive development of machine-checked proofs.