Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Malcolm McLean Newsgroups: comp.lang.c Subject: Re: ASCII to ASCII compression. Date: Fri, 7 Jun 2024 13:43:50 +0100 Organization: A noiseless patient Spider Lines: 50 Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Fri, 07 Jun 2024 14:43:50 +0200 (CEST) Injection-Info: dont-email.me; posting-host="3d5cf5214f2d8b45c65425247320c56d"; logging-data="2187001"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18+rY8xQIY/6Xombb4clrXuY6+ZkbZZ32I=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:YluLmEm0K9USU+6lYI2GYFQywlM= Content-Language: en-GB In-Reply-To: Bytes: 3053 On 07/06/2024 10:36, David Brown wrote: > On 06/06/2024 21:02, Malcolm McLean wrote: >> On 06/06/2024 17:55, bart wrote: >>> On 06/06/2024 17:25, Malcolm McLean wrote: >>>> >>>> Not strictly a C programming question, but smart people will see the >>>> relavance to the topicality, which is portability. >>>> >>>> Is there a compresiion algorthim which converts human language ASCII >>>> text to compressed ASCII, preferably only "isgraph" characters? >>>> >>>> So "Mary had a little lamb, its fleece was white as snow". >>>> >>>> Would become >>>> >>>> QWE£$543GtT£$"||x|VVBB? >>> >>> What's the problem with compressing to binary (using existing, >>> efficient utilities), then turning that binary into ASCII (like Mime >>> or Base64)? >>> >> Because if a single bit flips in a zip archive, it's likely the entire >> archive will be lost. This scheme is robust. We can emed compressed >> text in programs, and if it is corruped, only a single line will >> become unreadable. > > Ah, you want something that will work like your newsreader program that > randomly changes letters or otherwise corrupts your spelling while > leaving most of it readable?  :-) > > Pass the data through a compressor and then add forward error checking > mechanisms such as Reed-Solomon codes.  Then convert to ASCII base64 or > similar. > Yes, exactly. I want a system for compression which is robust to corruption, can be stored as text, and with a compressor / decompressor which can be written by a child hobby programmer with only a very little bit of experience of programming. That's what I need for Baby X. The FileSystem XML files can get very large, and of course Baby X programmers are going to ask about compression. And I don't think there is an existing system, and so I shall devise one. -- Check out Basic Algorithms and my other books: https://www.lulu.com/spotlight/bgy1mm