Archive file SRFIs Lassi Kortela (01 Apr 2019 08:49 UTC)
Re: Archive file SRFIs Arthur A. Gleckler (01 Apr 2019 15:05 UTC)
Re: Archive file SRFIs Lassi Kortela (01 Apr 2019 16:29 UTC)
Re: Archive file SRFIs John Cowan (01 Apr 2019 16:47 UTC)
Re: Archive file SRFIs Lassi Kortela (01 Apr 2019 17:38 UTC)
Re: Archive file SRFIs Göran Weinholt (01 Apr 2019 20:14 UTC)
Re: Archive file SRFIs Lassi Kortela (05 Apr 2019 21:47 UTC)
Re: Archive file SRFIs Lassi Kortela (05 Apr 2019 22:17 UTC)
Re: Archive file SRFIs Lassi Kortela (07 Apr 2019 16:53 UTC)
Re: Archive file SRFIs John Cowan (07 Apr 2019 17:54 UTC)

Re: Archive file SRFIs Lassi Kortela 01 Apr 2019 17:38 UTC

Thanks for chiming in.

> If you write an implementation for R7RS it will be easily integrated
> into snow-fort.org <http://snow-fort.org>, where any R7RS implementation
> can easily use it.

OK, I see that the (chibi sqlite3) binding on snow-fort uses the Chibi
FFI (the language for writing bindings looks sweet btw!) I presume each
Scheme implementation would need its own implementation of the SRFI
unless there is a cross-implementation FFI I'm unaware of.

I expect most implementations would be bindings for either the
high-level libarchive, or the low-level zlib and its kin (libarchive
itself uses zlib, bzlib, liblz4, liblzo and liblzma under the hood).

There would likely be a little code in pure Scheme that could be shared
by almost all implementations (some glue code and assorted things like
pathname normalization and the like).

Also, for implementations that wrap byte codec libraries written in C
(gzip, bzip2, etc.) but use archive libraries written in Scheme (zip,
tar, etc.), we might be able to make a reference implementation of the
Scheme part base on Göran's code.

> I wouldn't worry about the random-access facility.  It doesn't make
> sense for tarballs anyway, only for zipfiles.
Yeah. Implementations would have to use temp files or other caching
tricks to create the illusion that a tar.gz/tar.bz/tar.xz file supports
random access like zip. RAR and 7z archives can also compress contiguous
files as one hunk (<https://en.wikipedia.org/wiki/Solid_compression>).