[Haskell-cafe] Re: Versioning
robdockins at fastmail.fm
Wed Dec 20 16:01:07 EST 2006
On Dec 20, 2006, at 2:37 PM, Joachim Durchholz wrote:
> Ross Paterson schrieb:
>>> It might be not feasible though. The papers mention that you
>>> can't serialize (well, actually unserialize) function values with
>>> it. For the envisioned update-through-marshalling process, this
>>> would prevent me from ever using function values in data that
>>> needs to be persistent, and that's quite a harsh restriction.
>> That's hard to avoid, unless you have a data representation of the
>> functions you're interested in.
> I could encode functions by their name. I don't think that would
> scale to a large application with multiple developers, but it's not
> this kind of project anyway.
> I'd be reluctant to accept that way if it means adding boilerplate
> code for every function that might ever be serialized. Since I'm
> planning to serialize an entire application, I fear that I'd need
> that boilerplate code for 90% of all functions, so even a single
> line of boilerplate might be too much.
Let me just say here that what you are attempting to do sounds very
difficult. As I understand, you want to be able to serialize an
entire application at some (predetermined / arbitrary?) point, change
some of its code and/or data structures, de-serialize and run the
thing afterwards. Doing something like this without explicit
language support is going to be hard, especially in a fairly static
language like Haskell.
I would think Smalltalk, Erlang, or something from the Lisp/Scheme
family would be more suitable for this sort of work (caveat, I have
little experience with any of these languages). Also, take a look
here (http://lambda-the-ultimate.org/node/526) for some related
Speak softly and drive a Sherman tank.
Laugh hard; it's a long way to the bank.
More information about the Haskell-Cafe