Hi,
I am forwarding you a question from one of our developers, who is working on updating CFFI to work with ECL.
His question is how you handle garbage collection and foreign variables. When setting these variables with, say, a copy of a string (setf *var-string* "hello") a region of memory has to be allocated. But what happens when we set this variable again afterwards? (setf *var-string* "world")
Does CFFI assume that foreign variables become part of the set of roots to be considered by the garbage collector? This seems a strong assumption, given the fact that not all variables will contain pointers, etc.
Or is the user expected to free the first string by herself?
Juanjo