Generic packet descriptions: Verified Parsing and Pretty Printing of Low-Level Data

Marcell van Geest, Wouter Swierstra

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    Abstract

    Complex protocols describing the communication or storage of binary data are difficult to describe precisely. This paper presents a collection of data types for describing a binary data formats; the
    corresponding parser and pretty printer are generated automatically from a data description. By embedding these data types in a general purpose dependently typed programming language, we can verify once and for all that the parsers and pretty printers generated in this style are correct by construction. To validate our results, we show how to write a verified parser of the IPv4 network protocol.
    Original languageEnglish
    Title of host publicationTyDe 2017
    Subtitle of host publicationProceedings of the 2nd ACM SIGPLAN International Workshop on Type-Driven Development
    PublisherAssociation for Computing Machinery
    Pages30-40
    Number of pages11
    ISBN (Print)978-1-4503-5183-6
    DOIs
    Publication statusPublished - 3 Sept 2017

    Keywords

    • data type generic programming
    • dependent types
    • parsing
    • pretty printing

    Fingerprint

    Dive into the research topics of 'Generic packet descriptions: Verified Parsing and Pretty Printing of Low-Level Data'. Together they form a unique fingerprint.

    Cite this