frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Ask HN: Feedback on a new framework aiming at the classic RPC headaches

3•thefastpath•5mo ago
TL;DR: Built an RPC framework that uses various approaches to solve existing RPC issues. Docs-only preview, seeking feedback before finalizing.

After seeing the same complaints about RPCs resurface for years, I spent the last year building a new RPC framework, AtomicLinkRPC (ALR).

The same article spawns heated discussions every few years:

https://reasonablypolymorphic.com/blog/protos-are-wrong/

And then the discussions based on that:

https://news.ycombinator.com/item?id=21871514

https://news.ycombinator.com/item?id=35281561

https://news.ycombinator.com/item?id=45139656

I've implemented a concrete, end-to-end answer to these issues and have published a docs-only preview (C++ first):

https://atomiclinkrpc.github.io/alr-preview/

Brief example:

  // service.h
  class Greeter : public alr::EndpointClass
  {
  public:
      static std::string sayHello(const std::string& name);
  };

  // service.cpp
  std::string Greeter::sayHello(const std::string& name)
  {
      return "Hello " + name;
  }

  int main()
  {
      return alr::ConnectionInfo()
          .setListenAddress("0.0.0.0:55100")
          .listen();
  }

  // client.cpp
  #include "alr/endpoint.h"
  #include "client_gen.h"

  int main()
  {
      alr::Endpoint ep = alr::ConnectionInfo()
          .setConnectAddress("service-host:55100")
          .connect();
  
      auto result = Greeter::sayHello("World"); // Happens to be RPC
  
      printf("%s\n", result.c_str());
      return 0;
  }
Below is a short list of issues brought up by the above discussions, and a brief description of how ALR solves each. I'd love your critique on what you think about these approaches, where you believe they'll break, and what's missing (but see the docs link for more in-depth details).

1) Impedance mismatch: App code contorts to fit the transport

- In ALR, "messages" and other RPC specific concepts become low-level implementation details, never to be seen by your business logic. Remotable classes, methods and structs stay clean from RPC noise and map 1:1 to your business logic.

- ALR uses an ambient variable system (see the docs), which is a set of thread-local variables that together provide all the context needed to perform RPCs without dragging context variables throughout your business logic. Only your own clean classes, clean functions, clean structs, and native types. No noise.

2) API evolution is broken, fragile, inconsistent or difficult to use and maintain in reality.

- ALR directly uses your classes, methods and structs as the schema, with no fragile tags.

- ALR negotiates schemas and visitor layout mapping at handshake time and creates an intersection map to allow different versions to interoperate.

3) Steep learning curve to understand and implement RPC frameworks

- Besides deriving your remotable class from an ALR base class, there isn't much new API to learn.

- Please check out the examples in the docs-preview link to get a feel for how easy it is to use compared to other frameworks.

4) Performance

- Benchmark results show that ALR can significantly outperform gRPC, see the results in docs. I'll be happy to discuss how those results are even possible.

Questions for HN

1. Do you see any flaws with ALR's approach to solving some of these issues?

2. If you have counterexamples where the dynamic remote capability check falls down, I want to hear them.

3. What RPC pain points am I missing that aren't addressed by ALR?

4. Any specific areas that need more detail here or in the docs?

Status & scope

- This is a docs-only preview. I'm seeking adversarial feedback before I freeze the interfaces.

- The source is not public yet while I finalize the open-source license.

- C++ is the first supported language, with plans for Python, Rust, and others.

Thanks for taking a look - blunt feedback welcome!

Like Game-of-Life, but on Growing Graphs, with WASM and WebGL

https://znah.net/graphs/
1•znah•40s ago•0 comments

Show HN: agent-ledger – prevent double side effects when AI agents retry

https://github.com/rune0-dev/agent-ledger
1•itsimri•41s ago•0 comments

Gemini responds to request to turn on lights with hallucinated jailbreak prompt

https://www.reddit.com/r/googlehome/s/Lh3dYqccgB
1•visviva•2m ago•0 comments

RustCast -open-source Raycast-style launcher written in Rust

https://github.com/unsecretised/rustcast
1•todsacerdoti•2m ago•0 comments

Why Do Olympic Athletes Bite Their Medals?

https://www.thv11.com/article/sports/olympics/winter-games-iq/why-athletes-bite-medals-olympics/5...
1•RickJWagner•3m ago•0 comments

Mdash – Markdown in URL

https://kamilmac.github.io/mdash/
1•kmacinski•5m ago•0 comments

Brings your family memories now

https://familymemories.video
1•tareq_•5m ago•0 comments

Travel to Cheap Destinations

https://nomagicpill.substack.com/p/travel-to-cheap-destinations
1•surprisetalk•6m ago•0 comments

Rebuilding my home network with VLANs and 10Gbps

https://clintonboys.com/projects/homelab/03-network/
1•mtsolitary•7m ago•0 comments

Show HN: RepoSherlock – repo onboarding in minutes (map, run, risks)

1•kemal-arslan•8m ago•0 comments

Going Through Snowden Documents, Part 2

https://libroot.org/posts/going-through-snowden-documents-part-2/
1•stareatgoats•10m ago•0 comments

Can Europe get kids off social media?

https://www.ft.com/content/cf465c21-4789-490b-b328-41f6383567d7
2•thm•13m ago•0 comments

I Built a NAS (Buildlog)

https://arne.me/blog/buildlog-nas
2•abahlo•13m ago•0 comments

Making Software: How do computers store data?

https://www.makingsoftware.com/chapters/how-is-data-stored
1•Garbage•15m ago•0 comments

A timeline of claims about AI/LLMs

https://blog.nethuml.xyz/posts/2026/02/timeline-of-claims-about-ai-llms/
2•nethuml•17m ago•0 comments

Freeciv 3D with hex map tiles and WebGPU renderer

https://freecivworld.net/
1•roschdal•18m ago•0 comments

SpaceX-xAI Merger: Nobody's Talking About the von Neumann Elephant in the Room

1•juanpabloaj•22m ago•1 comments

Smart Homes Are Terrible

https://www.theatlantic.com/ideas/2026/02/smart-homes-technology/685867/
6•aarghh•26m ago•0 comments

Ask HN: Would you use an ESLint-like tool for SEO that fails your CI/CD build?

1•YannBuilds•27m ago•0 comments

Praise for Price Gouging

https://www.grumpy-economist.com/p/praise-for-price-gouging
1•mhb•30m ago•0 comments

Open source infra orchestrator agent clanker CLI

https://github.com/bgdnvk/clanker
1•tekbog•32m ago•0 comments

Lance table format explained simply, stupid (Animated)

https://tontinton.com/posts/lance/
1•tontinton•33m ago•0 comments

Solving Soma

https://anekstein.com/posts/2026-02-01-blocker
1•davidanekstein•33m ago•0 comments

We built a cloud platform for agentic software (our virtualization, etc.)

https://agentuity.com/
1•rblalock•33m ago•2 comments

Show HN: WLM-SLP – A 0D-27D Structural Language for Multi-Agent Alignment

https://github.com/gavingu2255-ai/WLM-Open-Source/blob/main/README.md
1•WujieGuGavin•33m ago•0 comments

Former Tumblr Head Jeff D'Onofrio Steps in as Acting CEO at the Washington Post

https://www.theverge.com/tech/875433/tumblr-jeff-donofrio-ceo-washington-post-layoffs
3•bookofjoe•37m ago•1 comments

Bounded Flexible Arrays in C

https://people.kernel.org/kees/bounded-flexible-arrays-in-c
1•fanf2•37m ago•0 comments

The Invisible Labor Force Powering AI

https://cacm.acm.org/news/the-invisible-labor-force-powering-ai/
1•pseudolus•39m ago•0 comments

Reading Recursion via Pascal

https://journal.paoloamoroso.com/reading-recursion-via-pascal
1•AlexeyBrin•39m ago•0 comments

Show HN: I made a website that finds patterns on your spreadsheet

https://analyzetable.com
1•kouhxp•40m ago•0 comments