[racket] Using raco exe

From: Norman Gray (norman at astro.gla.ac.uk)
Date: Sun Jun 13 07:44:25 EDT 2010

Matthew, hello.

On 2010 Jun 12, at 13:53, Matthew Flatt wrote:

> The problem may be that you are compiling the extension for CGC, but
> you're linking and running for 3m. As a result, some local pointers in
> the implementation of the extension are invisible to the GC.

Aha, it would have taken a while for this to occur to me.  Thanks for that.

The problem doesn't magically go away, however:

> % "/Data/LocalApplications/Racket/Racket v5.0/bin/raco" exe --cgc -o build/simbad-lod server.ss
> create-embedding-executable: can't find Racket executable for variant cgc
> 
>  === context ===
> /Data/LocalApplications/Racket/Racket v5.0/collects/compiler/embed-unit.rkt:1008:4: core
> /Data/LocalApplications/Racket/Racket v5.0/collects/compiler/commands/exe.rkt: [running body]
> /Data/LocalApplications/Racket/Racket v5.0/collects/raco/raco.rkt: [running body]
> /Data/LocalApplications/Racket/Racket v5.0/collects/raco/main.rkt: [running body]

So something may yet be amiss.

But don't worry about it on my behalf: this is a sign.  It's a sign that it's probably about time that I converted this extension to use the 3m GC, which will evade the problem in the Correct fashion.

> Along those lines, my guess is that requiring `web-server/servlet'
> changes the timing of a GC so that one occurs during the initialization
> of the extension. Pointers then get lost in a way that drops the
> instantiation of the extension-implemented module.

Hmm: the GC still retains something of the occult in my perception.

Best wishes,

Norman


-- 
Norman Gray  :  http://nxg.me.uk





Posted on the users mailing list.