back

by uecker·2y ago·view on hn ↗
The C header interface is simple:

  struct foo;
  struct foo *foo_alloc();
  void foo_do_something(struct foo *p, ...);
This gives a simple to understand API with clearly defined boundary, has a stable ABI, preserves fast compilation times, avoids instruction bloat, etc. One could do this in C++ too, but what would be the point of using C++ then...