ross@spam.ua.oz.au (Ross Williams) (06/20/91)
PROPOSAL FOR A DATA COMPRESSION INTERFACE STANDARD ================================================== Author : Ross Williams. Date : 20-Jun-1991. There are now so many data compression algorithms with so many different characteristics, written in so many different languages, on so many different systems that there is pressing need for a standardized data compression algorithm interface. A standardized interface would yield the following benefits: * The standard interface would allow programmers to code for generic data compression and then quickly and easily swap between various algorithms until they find the one best suited for thir application. Writing glue code may be trivial, but if one has to do it twenty times, it can become prohibitively time consuming. * A standard interface would assist those cataloging and comparing algorithms. * A standard interface would encourage the designers of data compression algorithms to provide conforming implementations. * A standard interface would make it easy for programmers to write programs that select from a range of data compression algorithms at run time. As far as I know, no such standard exists and so I have devised a standard which I propose be used in all applications of general purpose data compression algorithms. I am posting the standard and its justification to comp.compression in the hope that after a few rounds of critical discussion and revision an informal standard can be settled upon. A later date, a standards committee could become involved. As it stands, my standard proposal is fairly rough. I look forward to your assistance in knocking it into shape. Ross Williams ross@spam.ua.oz.au Note 1: In the past when I have posted stuff, I have often received a barrage of email which would have been best shared with the group. For this exercise, which will be a group discussion, I suggest a bias for posting. Note 2: I am choosing to post this stuff instead of referring to an ftp site, as every time I refer to something I have put in an ftp site, I get a barrage of mail from people without ftp access wanting me to email them a copy. This said, the files will be available in: Machine : sirius.itd.adelaide.edu.au [IP=129.127.40.3] Directory : ~pub/misc/ Files: : dc_stan_spec - The proposed standard. dc_stan_just - Justification of the standard. cm_header.h - Child standard for C programming language.
ronald@ecl014.UUCP (Ronald van Eijck) (06/22/91)
In article <858@spam.ua.oz> ross@spam.ua.oz.au (Ross Williams) writes: >PROPOSAL FOR A DATA COMPRESSION INTERFACE STANDARD >================================================== >Author : Ross Williams. >Date : 20-Jun-1991. > >There are now so many data compression algorithms with so many >different characteristics, written in so many different languages, on >so many different systems that there is pressing need for a >standardized data compression algorithm interface. A standardized >interface would yield the following benefits: > > * The standard interface would allow programmers to code for > generic data compression and then quickly and easily swap between > various algorithms until they find the one best suited for thir > application. Writing glue code may be trivial, but if one has to > do it twenty times, it can become prohibitively time consuming. > > * A standard interface would assist those cataloging and comparing > algorithms. > > * A standard interface would encourage the designers of data > compression algorithms to provide conforming implementations. > > * A standard interface would make it easy for programmers to write > programs that select from a range of data compression algorithms > at run time. > How about this: You have a standard command 'archive' (or whatever) with a standard syntax and a standard file format. in this format the filename etc are stored and there is an idenification code for every compression scheme. Now you have shared libraries that do the actual encoding/decoding. This would be a good solution for everybody. - The user has to know only one command syntax to do his work. - Archive shells do not have to support a lot of different syntaxes. - The programmer of a future compression scheme only has to make a library with the encoding/decoding routines. Ofcourse there this standard code has to be ported to a number of platforms but since almost every archive programm is ported anyway this is not much of a problem. Identification codes have to be obtained from some central point where all the codes are registered. Just my $.02, -- +-------------------------------------------------------------------------+ | Ronald van Eijck {eunet!}hp4nl!cbmnlux!ecl014!ronald | | | | We do the impossible at once for a miracle we need a little more time | +-------------------------------------------------------------------------+