2017-07-22 13:32 GMT+02:00 Ricardo Wurmus <[email protected]>:

> Hey Guix,
>
> it always bothered me that after building a package we lose all of the
> beautiful features that Guix as a Guile library gives us.  We always
> need to keep track of the Guix version at the time of building the
> package and only then can we hope to rebuild the same thing again at
> some point in the future.
>
> What do you think about storing the serialised subset of the package
> graph in a separate output of the package?  Currently, the only place
> where we store anything meta is the database.  Wouldn’t it be great if
> we could “dump an image” of the state of Guile when it has evaluated the
> section of the package graph that is needed to build it?
>
> Then we could just load the serialised state into Guile at a later point
> and inspect the package graph as if we had Guix checked out at the given
> version.  I suppose we could also store this kind of information in the
> database.
>
> I’d really like the graph to stay alive even after Guix has moved on to
> later versions.  It also sounds like a really lispy thing to do.
>
> What do you think?
>

In the Clojure world, there's Datomic

On the Datomic web site there are sentences like

"Build flexible, distributed systems that can leverage the entire history
of your critical data, not just the most current state"

"Critical insights come from knowing the full story of your data, not just
the most recent state."

Disclaimer: I never used Datomic, I only read about it.

I think that would be an extremely cool tool; it cold be useful for a lot
of applications, not only Guix

It could be useful for the academia, both for teaching and research.
Stored computations can be very important
A tool like that could have a place in the "data science" arena

AND it could be an option for Datomic users (sorry Rich Hyckey), so it
could attract some Clojure people to the copyleft world

Also, the ability to store "images" borrows from the Lisp and Smalltalk
tradition

So, this is an extremely cool idea

Too bad I wouldn't know where to start from :-/

Reply via email to