So one thing that actually may be better than weak maps is:

```js
let buffer = new Buffer(...)
return Object.create(buffer, {
  parent: { value: parent }
})
```

But I'm not sure it will behave as expected in all cases.