Compressão de texto com perdas
Dos 256 caracteres possíveis que um byte pode representar, apenas alguns deles são usados ​​na maioria das circunstâncias. De alguma forma, não poderíamos tirar proveito disso e diminuir nossos arquivos de texto, eliminando a necessidade de letras raramente usadas?
Muitas letras não agregam valor na maioria das situações e podem ser substituídas por letras mais comuns. Por exemplo, um "L" minúsculo, um "I" maiúsculo e o número "1" parecem quase idênticos na maioria das situações, para que possam ser consolidados.
Há pouca necessidade de letras maiúsculas, para que possam ser dispensadas. O programa de descompressão / exibição pode até colocar automaticamente em maiúscula a primeira letra de cada frase, nomes comuns etc.
As inscrições serão julgadas em:
legibilidade após descompressão
As inscrições serão testadas com base na versão em texto simples deste artigo: http://en.wikipedia.org/wiki/Babbage e em um artigo da BBC News selecionado aleatoriamente .
Marcas extras serão concedidas por; preservar qualquer marcação, embelezar após descompressão (ou seja, colocar em maiúsculas etc).
O que você quiser, mas deve ser facilmente compilado (ou interpretado) em uma caixa básica * nix.
Então o PowerShell está fora? Vadio.
— JoeyAbr
Haskell:main = interact (\x -> take 90 x ++ " yada yada yada")
Observe também que "legibilidade após descompressão" é um critério bastante subjetivo.
— 11119 Joey
Especialmente em um Unix-Box, precisamos da distinção maiúscula e minúscula. :) E encontrar o início de um enviado. Não é trivial, se você. Usa abrev. :)
Queremos comprimir o alfabeto ou o texto? :) L = l = 1 comprime os caracteres necessários para representar nossos pensamentos. Mas "uma maçã" = "1 apl" compacta o texto.
— Anemgyenge
Muito ineficiente e com taxas ruins. Requer /usr/share/dict/words.
Perl, 0 caracteres
Taxa de compressão do infinito, embora não seja legível após a descompressão, para que perca algumas marcas.
Bash, 5 caracteres
Minha entrada preguiçosa que apenas pode ganhar:
Sem perdas, preserva perfeitamente a legibilidade e recebe todas as notas extras! A taxa de compactação no html Babbage é de 4,79x (153804 a 32084 bytes).