I've been roaming through the R source code and its documentation. When
it comes to memory management, I'm a bit surprised to see that there are
no C entry points to something such a GET_NEW_NODE in memory.c.

I mean, I'll need to make R GC and OCaml GC live together, so there will
be issues which will require access to some sort of control over the GC.
What is available in this respect? Only R_alloc?

I'm going through all this pain because looking at promiseArgs, it does
not have C entry points. OK. So I copy-paste it with minor tweaks into
my own code. It require mkPROMISE. No C entry points. Which requires
GET_FREE_NODE from memory.c. Which does not have C entry points in libR.so.

This is a pain. I'd rather not have to reimplement the interpreter in
OCaml. I simply want to bind to hidden symbols.