[racket] Delivering / distributing an application that uses places

From: Brian Mastenbrook (brian at mastenbrook.net)
Date: Fri Nov 4 12:40:32 EDT 2011

I can't figure out how to distribute an application that uses places. 
When this was brought up on the list once before (subject "Compiling a 
program with places"), Matthew suggested using 
`define-runtime-module-path', but I don't see how to make this work: 
`dynamic-place' does not take a resolved module path, and using 
`resolved-module-path-name' returns a symbol module name that is not 
understood by `dynamic-place'. The regular `place' form does not work 
either, as the executable generated by "raco exe" returns the following 

place: the current module-path-name is not a file path

Even using built-in "db" library with the #:use-place option to the 
connection functions does not seem to work:

standard-module-name-resolver: collection not found: 
"db/private/generic" in any of: ()

Is there any way to make this work? The racket program we're using needs 
to be delivered onto computers where it's not necessary or desirable to 
have the full racket distribution installed, and we'd like to use places 
to prevent foreign calls (e.g. sqlite) from blocking the main runtime 
and for parallelism.

Brian Mastenbrook
brian at mastenbrook.net

Posted on the users mailing list.