<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE message PUBLIC
  "-//MLarc//DTD MLarc output files//EN"
  "../../mlarc.dtd"[
  <!ATTLIST message
    listname CDATA #REQUIRED
    title CDATA #REQUIRED
  >
]>

  <?xml-stylesheet href="../../mlarc.xsl" type="text/xsl"?>


<message 
  url="2002/07/7e2792e8388e42aaaa374716c37998e6"
  from="Fernando Alegre &lt;fernando@c...&gt;"
  author="Fernando Alegre"
  date="2002-07-08T13:28:04"
  subject="[Caml-list] finalizing bigarrays"
  prev="2002/07/4d3d90399b5d02aacc1097cf0afe66fd"
  next="2002/07/01328f4302f99cdf82587651fd28d126"
  next-in-thread="2002/07/01328f4302f99cdf82587651fd28d126"
  prev-thread="2002/07/a5e8fb42c629d04a23cbf4074c167426"
  next-thread="2002/07/d84193189834bb0b419bebbe8b34fe34"
  root="../../"
  period="month"
  listname="caml-list"
  title="Archives of the Caml mailing list">

<thread subject="[Caml-list] finalizing bigarrays">
<msg 
  url="2002/07/7e2792e8388e42aaaa374716c37998e6"
  from="Fernando Alegre &lt;fernando@c...&gt;"
  author="Fernando Alegre"
  date="2002-07-08T13:28:04"
  subject="[Caml-list] finalizing bigarrays">
<msg 
  url="2002/07/01328f4302f99cdf82587651fd28d126"
  from="Olivier Andrieu &lt;andrieu@i...&gt;"
  author="Olivier Andrieu"
  date="2002-07-08T14:21:02"
  subject="Re: [Caml-list] finalizing bigarrays">
</msg>
</msg>
</thread>

<contents>

Are there any plans to add a "finalize" function to externally managed
bigarrays?

We have a C library that allocates bigarrays in a certain complex way and
needs to deallocate them when the bigarrays are no longer in use. We have
thought of several ways to do this, but neither is optimal, except the last
one:

1) Wrap the bigarray in a custom type that we need to drag along with it
   all the time. The finalizer in the custom type will then deallocate the
   bigarray.
   
2) Do without bigarrays, and move some code from Caml to C.

3) Copy the bigarray source code (bigarray_stubs.c) and modify it to accept
   an external finalizer. We would still use bigarrays, so that compiler
   optimizations are performed.
   
4) Ask the OCaml developers to add a way to finalize bigarrays... :-)

So... any chance this will be added in the next release?

Thank you,

      Fernando
      
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners

</contents>

</message>

