> Речь идёт об алгоритме, который работает в том числе на слабых IoТ устройствахИм bz2 совсем не друг, там проблемы со всем и сразу - и плотное сжатие все хотят, и проц дохлый. А bz2 там нечего ловить, тормозной и жмет неважно, ни два ни полтора получается.
> или ты мне на микроконтроллер, который ещё более-менее тянет HTML
> и при желании всё же может жать zlib'ом, предлагаешь засунуть словарь brotli?
Там не столько в словаре будет основная проблема. А в том что максимальный объем RAM, даже на декомпрессию, может быть довольно непотребный (минимум словарь размером + еще оверхед). Впрочем 200 кило словаря в чем-то таком тоже "не очень". И поэтому там не логично заявлять accepts для бротли. Иначе можно тупо OOM получить если ремота прикольнется.
Хочешь рассказать мне про микроконтроллеры? :) Так то там что-то типа crush интересно, декодер лезет на экран, жмет сносно, "uses no RAM for decompression" (в том плане что там нет больших state, словарей, ... ). Можно LZO и UCL, но там декодеры воистину наркоманские.
> Вы со своими Феномами вообще потеряли берега.
Мы с нашими STM32F0 еще и не на таком декомпрессию запускали... вон там чуваки с Z80 ажно. Чего вопишь? Хошь алго покажу? Спроси LZSA на гитхабе. Весьма непогано жмет для "simple LZ" в втором варианте. И даже на Z80 декомпрессуемо.
> Куча устройств НИКОГДА не получит производительности, достаточной для brotli.
Мне этот момент тоже не нравится до некоторой степени.
> Сами же создаёте условия для неуниверсальности решений, а потом жалуетесь на
> фрагментацию платформ и невозможность изучить и начать зарабатывать деньги на этом.
Зарабатывать деньги на ... чем именно? Небольшом объеме данных? Я видите ли в этом случае использую компактные бинарные протоколы, резонно полагая что чем меньше на входе, тем больше предпосылок чтобы и на выходе было меньше, да и времени на сжатие и распаковку так меньше.
> Я уже не говорю о том, что история потом элементрарно повторяется, когда
> переизобретается велосипед с новым уровнем абстракции.
Тем не менее сама возможность вгружать словари достаточно забавная. Ты никогда не думал что это дельтакомпрессор на халяву?
Это делается так: словарем грузится old version. Запускается алгоритм сжатия. Его выхлоп с тем словарем - дельта новой версии от старой по сути. Если ремота при декомпрессе тоже умеет словарь юзать, может вгрузить вон ту дельту и сделать из старой версии новую ... просто распаковав это. А хренли, LZ как таковой совпадения кодирует и если история предзагружена из словаря - ну значит и относительно этого закодирует. По этой причине большой словарь и является мухлежом.
Если довести идею до абсолюта, скачав всю википедию любая статья жмется до URL на нее. Но словарь получается оооооочень большой :)