Reference. PADS: a domain-specific language for processing ad hoc data

Cite

Cite as @fisher-2005-pads (helia, typst) · \cite{fisher-2005-pads} (LaTeX)
BibTeX
bibtex · 1 line
@inproceedings{fisher-2005-pads, series={PLDI05}, title={PADS: a domain-specific language for processing ad hoc data}, url={http://dx.doi.org/10.1145/1065010.1065046}, DOI={10.1145/1065010.1065046}, booktitle={Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation}, publisher={ACM}, author={Fisher, Kathleen and Gruber, Robert}, year={2005}, month=June, pages={295–304}, collection={PLDI05} }
hayagriva YAML (typst)
yaml · 14 lines
fisher-2005-pads:
  type: article
  title: 'PADS: a domain-specific language for processing ad hoc data'
  author:
  - Fisher, Kathleen
  - Gruber, Robert
  date: 2005-06
  page-range: 295-304
  serial-number:
    doi: 10.1145/1065010.1065046
  parent:
    type: proceedings
    title: Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
    publisher: ACM
Cited by (6)

Interval Parsing Grammars for File Format Parsing zhangIntervalParsingGrammars2023

File formats specify how data is encoded for persistent storage. They cannot be formalized as context-free grammars since their specifications include context-sensitive patterns such as the random access pattern and the type-length-value pattern. We propose a new grammar mechanism called Interval Parsing Grammars IPGs) for file format specifications. An IPG attaches to every nonterminal/terminal an interval, which specifies the range of input the nonterminal/terminal consumes. By connecting intervals and attributes, the context-sensitive patterns in file formats can be well handled. In this paper, we formalize IPGs’ syntax as well as its semantics, and its semantics naturally leads to a parser generator that generates a recursive-descent parser from an IPG. In general, IPGs are declarative, modular, and enable termination checking. We have used IPGs to specify a number of file formats including ZIP, ELF, GIF, PE, and part of PDF; we have also evaluated the performance of the generated parsers.
PDF · DOI · pldb

CoStar: A verified ALL(*) parser lasserCoStarVerifiedALL2021

Parsers are security-critical components of many software systems, and verified parsing therefore has a key role to play in secure software design. However, existing verified parsers for context-free grammars are limited in their expressiveness, termination properties, or performance characteristics. They are only compatible with a restricted class of grammars, they are not guaranteed to terminate on all inputs, or they are not designed to be performant on grammars for real-world programming languages and data formats. In this work, we present CoStar, a verified parser that addresses these limitations. The parser is implemented with the Coq Proof Assistant and is based on the ALL(*) parsing algorithm. CoStar is sound and complete for all non-left-recursive grammars; it produces a correct parse tree for its input whenever such a tree exists, and it correctly detects ambiguous inputs. CoStar also provides strong termination guarantees; it terminates without error on all inputs when applied to a non-left-recursive grammar. Finally, CoStar achieves linear-time performance on a range of unambiguous grammars for commonly used languages and data formats.
PDF · DOI · pldb

Automatic Discovery and Synthesis of Checksum Algorithms from Binary Data Samples labell-2020-automatic

DOI

TxForest: A DSL for Concurrent Filestores dilorenzo-2019-txforest

PDF · DOI · arXiv · pldb

From dirt to shovels: fully automatic tool generation from ad hoc data fisher-2008-from

PDF · DOI · pldb

The next 700 data description languages fisher-2006-the

PDF · DOI · pldb
Cites 27 works (0 here)
External (27)
fisher-2005-pads reference entries/refs/fisher-2005-pads/fisher-2005-pads.hel