nowfound

Life & fun · alternatives · 2026

24 alternatives to Go channels as a C library (with Obj-C wrapper)

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

Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes. Go channels as a C library (with Obj-C wrapper) launched in 2014; 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 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.

    2023 · github.com · its alternatives →

  3. 3

    Fast JSON encoder/decoder compatible with encoding/json for Go - goccy/go-json

    2021 · github.com · its alternatives →

  4. 4

    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 →

  5. 5

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

    2019 · github.com · its alternatives →

  6. 6

    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 →

  7. 7

    Hi everyone, I recently published a small open-source project. It’s a minimal network packet analyzer written in Go — designed more like a learning toy than a replacement for Wireshark. It currently supports parsing basic protocols like TLS, DNS, and HTTP, and includes a tiny fuzzing engine to test payload responses. You can inspect raw packet content directly from the terminal. The output is colored for readability, and the code structure is kept simple and clear. The entire program is very small — just about 400 lines of Go code. I know it’s not anywhere near Wireshark’s level, and I still…

    2025 · 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

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

    2015 · github.com · its alternatives →

  10. 10

    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 →

  11. 11

    The authoritative resource for learning Go

    2016 · amazon.com · its alternatives →

  12. 12

    🎁 A glib-like multi-platform c library. Contribute to tboox/tbox development by creating an account on GitHub.

    2022 · github.com · its alternatives →

  13. 13

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

    2017 · github.com · its alternatives →

  14. 14CL
  15. 15

    Tesseract is one of the largest Open Source OCR (Optical Character Recognition) projects. There is already a Go library for using Tesseract from Go with CGo, called Gosseract. However if you are interested in OCR from Go without C complicating building and cross-compiling, there aren't any other options. Wazero is a Go WASM runtime that doesn't have any CGo dependencies. With Emscripten Tesseract has been compiled to WASM and ran within Wazero. Gogosseract provides a simple API on top of this. This project has been an interesting delve into the world of WASM.

    2023 · github.com · its alternatives →

  16. 16

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

    2020 · github.com · its alternatives →

  17. 17

    A finite-state machine library for the Go programming language - calebwin/go-sm

    2018 · github.com · its alternatives →

  18. 18

    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 →

  19. 19

    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 →

  20. 20

    Hi All, I felt like I was re-inventing the wheel by bolting similar channel architectures onto different Go structs repeatedly so I decided to extract some common types into into one library so that they would be easier to re-use: - oneshot - spsc - spmc - mpsc - mpmc - broadcast - watch The types are inspired by Rust channels so if you're coming from Rust they should feel familiar. So far I'm really enjoying using them but it'd be great to get some external feedback if you have time! https://github.com/amorey/gochan Andres

    May 2026 · github.com · its alternatives →

  21. 21

    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 →

  22. 22

    Hey HN, I’m sharing ts-chan, an NPM package providing Go-like concurrency primitives, including channels and select statements, for TypeScript and JavaScript, supporting Node.js, Deno, Bun, and browsers. This is something I've built to make implementing Go-style "control loops" feasible in JavaScript, but there are many possible applications. Highlights: - Features a FIFO processing Chan class and versatile Select class for concurrency control. - Supports buffered channel and channel close semantics very close to Go's. - TypeScript-first implementation. - Defines a simple "channel protocol"…

    2023 · github.com · its alternatives →

  23. 23
    Gondola▲69

    The web framework for Go programming language

    2014 · its alternatives →

  24. 24IB

    This weekend I created stacklib.h - a single-header library that brings Forth-style stack operations to C. It implements a basic interpreter with: - Stack operations (push/pop/dup/swap/over/drop) - Arithmetic (+, -, *, /) - Output (., emit, cr) - Stack inspection (.s, depth) Example usage: Stack s; stack_init(&s); dict_init(); exec(&s, "10 20 + ."); // Prints "30" exec(&s, "1 2 3 4 .s"); // Shows stack contents The library is self-contained, requires no dependencies, and handles basic error checking. It was inspired by wanting to understand…

    2025 · 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 →