Skip to main content

Advent of Compression: writing a working BZip2 encoder in Ada from scratch in a few days

UB2.147 | Day 2 | 09:50 - 10:10 | Speakers: Gautier de Montmollin

Advent of Compression: writing a working BZip2 encoder in Ada from scratch in a few days
A picture of a devroom at FOSDEM 2024
Open in browser

Notes

Abstract

BZip2 is a famous and powerful lossless data compression format. It is very good on some data, like English novels or computer source code. An outstanding aspect of BZip2 is its simplicity. No tricky hash trees or convoluted state machines. However, compression software is generally very difficult to debug, in part impossible. So it is better to do things right the first time and use a language that does its best finding errors before running your program. I show you how I built a working encoder in a few days by leveraging the precise and customisable type system in Ada, especially range types that seem to have been made for this kind of software.

Attachments

Speakers

Gautier de Montmollin

Notice: The placeholder video image is licensed under CC BY-SA 4.0. The original image can be found hereChanges made to the image are: Cropped the image to a new ratio, part of the image was cut off.