Skip to content

GC control and GET_NEW_NODE.

1 message · Guillaume Yziquel

#
Hello.

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.

Suggestions?