[racket] Serializable struts and the quoted module path

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri May 25 07:53:53 EDT 2012

The intent is that you use a collection, so that the serialized form
would use a collection path instead of an absolute path.

That is, you'd create a new collection for your library, possibly using
`raco link' to register it, and then refer to the library (that
contains the serializable structure-type declaration) through a
collection-based path instead of a file path.

To make `serialize' more flexible, it might make sense for us to change
`serialize' so that it's sensitive to a parameter such as
`current-write-relative-directory'.

At Thu, 24 May 2012 18:14:20 -0600, Michael Wilber wrote:
> 
> Hey there!
> 
> So I'm trying to use racket/serialize according to
> http://docs.racket-lang.org/reference/serialization.html?q=serialize#(def._((lib._ra
> cket/private/serialize..rkt)._deserialize))
> 
> According to the third bullet point, custom serializable structure types
> include a "quoted module path" pointing to a module that provides the
> serialized structure's serialization info. It seems to be a full
> absolute filesystem path in my tests.
> 
> Problem is, I want to send serializable structs across the network to a
> machine where the module path is different.
> 
> Is there a sane way to, uh, strip off the absolute parts in that path? I
> could just mess around with the serialized info myself, but... oy,
> that just feels nasty.
> 
> (If anyone's curious, my ultimate goal is to send serializable lambdas
> to other machines. Just like Distributed Places, but not as conceptually
> confusing and constraining.)
> http://blog.racket-lang.org/2009/06/serializable-closures-in-plt-scheme.html
> 
> Thanks in advance.
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users

Posted on the users mailing list.