nowfound

Dev tools · alternatives · 2026

24 alternatives to A pure C89 implementation of Go channels, with blocking selects

A pure C (-std=c89) implementation of Go channels, including blocking and non-blocking selects. - GitHub - rochus-keller/CspChan: A pure C (-std=c89) implementation of Go channels, including blocking and non-blocking selects.

This is a C89 library that implements Go-style channels with blocking select operations for concurrent programming. It allows developers to use Go's channel patterns and synchronization primitives in C projects. The… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. A pure C89 implementation of Go channels, with blocking selects launched in 2023; newer entries below may have overtaken it.

  1. 1

    Pure C implementation of Go channels. Contribute to tylertreat/chan development by creating an account on GitHub.

    2014 · github.com · its alternatives →

  2. 2

    A full implementation of Go channels as a C library - davekeck/eb_chan

    2014 · github.com · its alternatives →

  3. 3

    Hey HN! I just released go-nbd, a lightweight Go library for effortlessly creating NBD servers and clients. Its a neat tool for creating custom Linux block devices with arbitrary backends, such as a file, byte slice or what I'm planning to use it for, a tape drive. While there are a few partially abandoned projects like this out there already, this library tries to be as maintainable as possible by only implementing the most recent handshake revision and baseline functionality for both the client and the server, while still having enough support to be useful. I'd love to get your feedback :)

    2023 · github.com · its alternatives →

  4. 4

    Contribute to sendilkumarn/gopurerc development by creating an account on GitHub.

    2020 · github.com · its alternatives →

  5. 5

    No gc, No goroutines, Produces small binaries while using the unmodified official go toolchain, and comes with complete Web SDK (generated from w3c/webref). We are building `pcz` to provide a reimagination of Go the language, in an effort to make it suitable for all kinds of programming tasks, and currently you can use it to build efficient web applications in Go using the generated Web SDK (as shown with the live web demo[1]). The journey is just starting, any suggestions? or any critics? [1]: https://primecitizens.github.io/livedemos/10-plat-web/

    2023 · github.com · its alternatives →

  6. 6

    Go-like DSL for C#. Contribute to kpocza/GoSharp development by creating an account on GitHub.

    2017 · github.com · its alternatives →

  7. 7

    Single header stackful cross-platform coroutine library in pure C. - edubart/minicoro

    2021 · github.com · its alternatives →

  8. 8

    Write your BPF programs in Go, not C. gobee transpiles a Go subset to BPF C and generates typed cilium/ebpf bindings. - boratanrikulu/gobee

    May 2026 · github.com · its alternatives →

  9. 9

    Go toolkit for clean, composable, channel-based concurrency - destel/rill

    2024 · github.com · its alternatives →

  10. 10

    :copyright: Concurrent Programming Library (Coroutine) for C11 - sharow/libconcurrent

    2016 · github.com · its alternatives →

  11. 11

    Concurrency library for C (coroutines). Contribute to tidwall/neco development by creating an account on GitHub.

    2024 · github.com · its alternatives →

  12. 12

    Cross platform C preprocessor and compiler. Contribute to andrewchambers/cc development by creating an account on GitHub.

    2015 · github.com · its alternatives →

  13. 13

    Asynchronous C networking library with HTTP server, WebSockets, reverse proxy, HTTP/2 gRPC client, TLS and event loop. - Softmotions/iwnet

    2022 · github.com · its alternatives →

  14. 14

    Hi! I've been working on the flipjump project, a programming language with 1 opcode: flip (invert) a bit, then jump (unconditionally). So a bit-flip followed by more bit-flips. It's effectively a bunch of NOT gates. This language, as poor as it sounds, is RICH. Today I completed my compiler from C to FlipJump. It takes C files, and compiles them into flipjump. I finished testing it all today, and it works! My key interest in this project is to stretch what we know of computing and to prove that anything can be done even with minimal power. I appreciate you reading my announcement, and be…

    2025 · github.com · its alternatives →

  15. 15

    C to Go Assembly. Contribute to minio/c2goasm development by creating an account on GitHub.

    2017 · github.com · its alternatives →

  16. 16

    I make a no-CGO Go SQLite driver, by compiling the amalgamation to Wasm, then loading the result with wazero (a CGO-free Wasm runtime). To compile SQLite, I use wasi-sdk, which uses wasi-libc, which is based on musl. It's been said that musl is slow(er than glibc), which is true, to a point. musl uses SWAR on a size_t to implement various functions in string.h. This is fine, except size_t is just 32-bit on Wasm. I found that implementing a few of those functions with Wasm SIMD128 can make them go around 4x faster. Other functions don't even use SWAR; redoing those can make them 16x faster.…

    2025 · github.com · its alternatives →

  17. 17

    Long-simmering side project that is finally ready to see the light. HAMTs are a cool persistent data structure and implementing one has been a lot of fun. Beyond the code, there is likely some value in the extensive and largely complete implementation docs; basic benchmarks are linked in the README, too. Kind of aiming to be "the libavl for HAMTs". That is obviously a high and aspirational bar but a distinct possibility if it stirs up a little interest and/or contribution. Anyways, it's time for this to go out, collect feedback and maybe even some use outside of toy projects. Let me…

    2023 · github.com · its alternatives →

  18. 18

    Smart pointers for the (GNU) C programming language - Snaipe/libcsptr

    2015 · github.com · its alternatives →

  19. 19

    A single publisher, multi subscriber lockless ring buffer build with the new generics in Go 1.18beta.

    2022 · github.com · its alternatives →

  20. 20

    Library for interacting with LLVM IR in pure Go. Contribute to llir/llvm development by creating an account on GitHub.

    2017 · github.com · its alternatives →

  21. 21

    Golang SQLite without cgo. Contribute to cvilsmeier/sqinn-go development by creating an account on GitHub.

    2023 · github.com · its alternatives →

  22. 22

    Hey HN, I just published v0.1.0 of go-bt and would love some feedback from the Go veterans here. Thanks in advance!

    Apr 2026 · github.com · its alternatives →

  23. 23

    Minimal and idiomatic WebSocket library for Go. Contribute to coder/websocket development by creating an account on GitHub.

    2019 · github.com · its alternatives →

  24. 24

    I've always been curious about how SQL engines actually work. So I built a minimum viable SQL engine in Go. - Supports CSV files as tables - Supports SELECT, FROM, WHERE, LIMIT It's very simple: 1. Parses query string 2. Converts it into an AST representation 3. Executes the query against the CSV 4. Returns the results

    2024 · github.com · its alternatives →

Also compare

Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →