Every story and comment from the Hacker News API, in a layout borrowed from 2001.
A comment on Crafting Interpreters: Strings.
struct sObjString { Obj obj; int length; char* chars; };
Instead, I think, you should have
struct sObjString { Obj obj; int length; char chars[0]; };
Instead, I think, you should have
and allocate that string object as one chunk with its characters.