How to make ad-hoc polymorphism less ad hoc
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Packet types: abstract specification of network protocol messages
Proceedings of the conference on Applications, Technologies, Architectures, and Protocols for Computer Communication
ASN.1: communication between heterogeneous systems
ASN.1: communication between heterogeneous systems
Scrap your boilerplate: a practical design pattern for generic programming
Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementation
DataScript - A Specification and Scripting Language for Binary Data
GPCE '02 Proceedings of the 1st ACM SIGPLAN/SIGSOFT conference on Generative Programming and Component Engineering
PADS: a domain-specific language for processing ad hoc data
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
PADS/ML: a functional data description language
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Why it's nice to be quoted: quasiquoting for haskell
Haskell '07 Proceedings of the ACM SIGPLAN workshop on Haskell workshop
Implementing XQuery 1.0: the Galax experience
VLDB '03 Proceedings of the 29th international conference on Very large data bases - Volume 29
From dirt to shovels: fully automatic tool generation from ad hoc data
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Ad Hoc Data and the Token Ambiguity Problem
PADL '09 Proceedings of the 11th International Symposium on Practical Aspects of Declarative Languages
The next 700 data description languages
Journal of the ACM (JACM)
Semantics and algorithms for data-dependent grammars
Proceedings of the 37th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Incremental learning of system log formats
ACM SIGOPS Operating Systems Review
A generic programming toolkit for PADS/ML: first-class upgrades for third-party developers
PADL'08 Proceedings of the 10th international conference on Practical aspects of declarative languages
A context-free markup language for semi-structured text
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Forest: a language and toolkit for programming with filestores
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Proactive wrangling: mixed-initiative end-user programming of data transformation scripts
Proceedings of the 24th annual ACM symposium on User interface software and technology
Spreadsheet data manipulation using examples
Communications of the ACM
A colorful approach to text processing by example
Proceedings of the 26th annual ACM symposium on User interface software and technology
Annotation for automation: rapid generation of file system tools
Proceedings of the Seventh Workshop on Programming Languages and Operating Systems
File systems deserve verification too!
Proceedings of the Seventh Workshop on Programming Languages and Operating Systems
Hi-index | 0.02 |
The goal of the PADS project, which started in 2001, is to make it easier for data analysts to extract useful information from ad hoc data files. This paper does not report new results, but rather gives an overview of the project and how it helps bridge the gap between the unmanaged world of ad hoc data and the managed world of typed programming languages and databases. In particular, the paper reviews the design of PADS data description languages, describes the generated parsing tools and discusses the importance of meta-data. It also sketches the formal semantics, discusses useful tools and how can they can be generated automatically from PADS descriptions, and describes an inferencing system that can learn useful PADS descriptions from positive examples of the data format.