Not exactly. It uses ptrace to follow all of the dependencies that a sequence of programs uses and then creates an archive of those files in a way that will allow the program to run again in the future. Running on other OSes is accomplished with a VM, iirc.
On Sunday, October 25, 2015, Sisyphuss <zhengwend...@gmail.com> wrote: > It's interesting. It's like a virtual machine, but maybe smaller than it. > > > On Sunday, October 25, 2015 at 12:23:24 AM UTC+2, Stefan Karpinski wrote: >> >> ReproZip is a pretty awesome language-agnostic tool for easy >> reproducibility: >> >> https://vida-nyu.github.io/reprozip/ >> >> On Sat, Oct 24, 2015 at 9:27 AM, Tamas Papp <tkp...@gmail.com> wrote: >> >>> On Fri, Oct 23 2015, Kris De Meyer <kr...@aniku.co.uk> wrote: >>> >>> > I know that all of these problems are solvable, but that's not the >>> point I >>> > am trying to make. All of these issues take time that keep me away from >>> > writing the software that I am hired to write in a limited number of >>> days, >>> > and my employers may not be interested in the reasons for why I can't >>> get >>> > it to work on time. Please also note that when in the midst of a >>> crisis and >>> > up against deadlines, I (and probably other users in similar >>> situations) >>> > may not have time to file bug reports, and not even have the time to >>> note >>> > down how I fixed or circumvented a certain problem. >>> >>> If your project is time critical and you absolutely cannot deal with any >>> breakage, just make a snapshot of everything as is and don't upgrade >>> anything until you are sure you have time to deal with bugs. If you need >>> to upgrade (eg because a bug fix just came out which you need), use >>> version control carefully so you can roll back to the previous state, or >>> backport the fix if necessary. >>> >>> Some languages have developed special tools for this --- eg for R, check >>> out Packrat: https://rstudio.github.io/packrat/ I am not aware of >>> anything similar for Julia, so you may have to do that manually. >>> >>> If you cannot implement any of the solutions above for some reason, you >>> may just have to accept that languages/environments under development >>> and critical projects just don't mix. >>> >>> Also, there is little point in telling people you don't have time to >>> file bug reports or make your workarounds known when using an open >>> source project. Open source projects thrive on user contributions (bug >>> reports count too), and that's pretty much the only way to make things >>> move forward. >>> >>> Best, >>> >>> Tamas >>> >> >>