To prepare some structure as argument to DLL call, a memory should be 
allocated by mema before call, and freed by memf after use. So that 
structure's life cycle is under the manual control.

I want to delegate this care to JE, something like this:

  struct=. SIZEOF # ' '     NB. equiv. to:
  addr=. 15!:14 < 'struct'  NB.   struct=. mema SIZEOF
  NB. fill the struct...
  SIGNATURE 15!:0 < < addr  NB. call DLL with addr as a sole parameter
  return.                   NB. let JE to do (memf addr) implicitly

But the question here is: does JE keep the result of (15!:14 < 'struct') 
permanent? Or situations are possible when a noun's data address can change 
(GC, unaliasing etc)?

-- 
Regards,
Igor


----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to