Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The problem with that (in C++) would be that

  A a;
  A* p = new A;
  assert(sizeof(*p) == sizeof(a));
This wouldn't be true and cause all sorts of trouble (arrays, etc.) if a had no pointer to a vtable, but *p did. Moreover, you can take the address of a stack/member object, so how would you distinguish the two types? You'd literally need to modify the type system, and that would cause trouble with templates, etc.


I'm not thinking of this in C++ or Smalltalk. I'm thinking of a feature in another language.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: