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.
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 language | English |
---|---|
Title of host publication | TyDe 2017 |
Subtitle of host publication | Proceedings of the 2nd ACM SIGPLAN International Workshop on Type-Driven Development |
Publisher | Association for Computing Machinery |
Pages | 30-40 |
Number of pages | 11 |
ISBN (Print) | 978-1-4503-5183-6 |
DOIs | |
Publication status | Published - 3 Sept 2017 |
Keywords
- data type generic programming
- dependent types
- parsing
- pretty printing