It works!  Thank you so much Nicolas! Mike On 2/22/18 3:42 PM, Nicolás Ojeda Bär wrote: > Dear Mike, > > I was able to successfully load delimcc into the toplevel after > applying the tiny patch below. > You can give it a try by doing: > >   opam source delimcc >   cd delimcc.(version) >   (apply patch) >   opam pin add . > > (you have to replace the stuff between parentheses by whatever is > correct in your setup.) > > diff --git a/stacks.c b/stacks.c > index fdab2a7..5765710 100644 > --- a/stacks.c > +++ b/stacks.c > @@ -203,13 +203,13 @@ value copy_stack_fragment(const value vek1) >  #endif >    if (size < Max_young_wosize) { > -    block = alloc(size, 0); > +    block = caml_alloc(size, 0); >      memcpy(&Field(block, 0), tp2, size * sizeof(value)); >    } else { > -    block = alloc_shr(size, 0); > +    block = caml_alloc_shr(size, 0); >      mlsize_t i; >      for (i = 0; i < size; i++) > -      initialize(&Field(block, i), tp2[i]); > +      caml_initialize(&Field(block, i), tp2[i]); >    } >    /* We check the invariants after the allocation of block, which may > @@ -382,4 +382,3 @@ value dbg_note(const value message) >    fprintf(stderr,"%s\n",String_val(message)); >    return Val_unit; >  } > > Hope it helps, > Nicolás > > > > On Fri, Feb 23, 2018 at 12:18 AM, Michael C Vanier > > wrote: > > I've been trying to use the delimcc delimited continuation > library, but so far I've been unsuccessful.  I'm using OCaml > 4.06.1 and I've tried it on both Mac OS X (High Sierra) and Ubuntu > MATE 17.10. I'm fine sticking to bytecode.  The opam package > installs correctly but when you try to run it you get errors from > the dynamically-linked libraries.  On Mac OS X I get this: > > # #require "delimcc";; > Cannot load required shared library dlldelimcc. > Reason: /Users/mvanier/.opam/4.06.1/lib/stublibs/dlldelimcc.so: > dlopen(/Users/mvanier/.opam/4.06.1/lib/stublibs/dlldelimcc.so, > 10): Symbol not found: _alloc >   Referenced from: > /Users/mvanier/.opam/4.06.1/lib/stublibs/dlldelimcc.so >   Expected in: flat namespace >  in /Users/mvanier/.opam/4.06.1/lib/stublibs/dlldelimcc.so. > > And on Ubuntu I get this: > > # #require "delimcc";; > /home/mvanier/.opam/4.06.1/lib/delimcc: added to search path > /home/mvanier/.opam/4.06.1/lib/delimcc/delimcc.cma: loaded > Cannot load required shared library dlldelimcc. > Reason: /Users/mvanier/.opam/4.06.1/lib/stublibs/dlldelimcc.so: > dlopen(/Users/mvanier/.opam/4.06.1/lib/stublibs/dlldelimcc.so, > 10): Symbol not found: initialize. > > However, in either case I can do: > > # open Delimcc;; > > and it reports no errors, but then if I try e.g.: > > # shift;; > Reference to undefined global `Delimcc` > > so it appears the library isn't there or isn't functional. > Compiling from the delimcc source also appears to work, but gcc > warns about implicit declarations of "alloc", "alloc_shr" and > "initialize" when compiling stacks.c, which makes sense.  > Compiling any of the test programs also fails. > > So it appears that this library no longer works.  Does anyone know > any way to make it work? > > Thanks in advance, > > Mike > > > -- > Caml-list mailing list.  Subscription management and archives: > https://sympa.inria.fr/sympa/arc/caml-list > > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > > Bug reports: http://caml.inria.fr/bin/caml-bugs > > >