How to replace failure by a list of successes
Proc. of a conference on Functional programming languages and computer architecture
Algebraic specification
ANTLR: a predicated-LL(k) parser generator
Software—Practice & Experience
PolyP—a polytypic programming language extension
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
AMiLP '95 Proceedings of the first international AMAST workshop on Algebraic methods in language processing
Featherweight Java: a minimal core calculus for Java and GJ
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A new approach to generic functional programming
Proceedings of the 27th 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
The next 700 programming languages
Communications of the ACM
Types and programming languages
Types and programming languages
Packrat parsing:: simple, powerful, lazy, linear time, functional pearl
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Polytypic data conversion programs
Science of Computer Programming
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
Fast, Error Correcting Parser Combinatiors: A Short Tutorial
SOFSEM '99 Proceedings of the 26th Conference on Current Trends in Theory and Practice of Informatics on Theory and Practice of Informatics
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
Deterministic, Error-Correcting Combinator Parsers
Advanced Functional Programming, Second International School-Tutorial Text
MPC '98 Proceedings of the Mathematics of Program Construction
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Parsing expression grammars: a recognition-based syntactic foundation
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Journal of Functional Programming
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
PADS: a domain-specific language for processing ad hoc data
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
The next 700 data description languages
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
PADS/ML: a functional data description language
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The theory and practice of data description
The theory and practice of data description
Implementing XQuery 1.0: the Galax experience
VLDB '03 Proceedings of the 29th international conference on Very large data bases - Volume 29
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
Parser combinators for ambiguous left-recursive grammars
PADL'08 Proceedings of the 10th international conference on Practical aspects of declarative languages
DBPL'05 Proceedings of the 10th international conference on Database Programming Languages
XDTM: the XML data type and mapping for specifying datasets
EGC'05 Proceedings of the 2005 European conference on Advances in Grid Computing
Polytypic syntax tree operations
IFL'05 Proceedings of the 17th international conference on Implementation and Application of Functional Languages
An embedded language for programming protocol stacks in embedded systems
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
Proceedings of the 14th International Conference on Database Theory
Bringing domain-specific languages to digital forensics
Proceedings of the 33rd International Conference on Software Engineering
Forest: a language and toolkit for programming with filestores
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
File systems deserve verification too!
Proceedings of the Seventh Workshop on Programming Languages and Operating Systems
Hi-index | 0.00 |
In the spirit of Landin, we present a calculus of dependent types to serve as the semantic foundation for a family of languages called data description languages. Such languages, which include pads, datascript, and packettypes, are designed to facilitate programming with ad hoc data, that is, data not in well-behaved relational or xml formats. In the calculus, each type describes the physical layout and semantic properties of a data source. In the semantics, we interpret types simultaneously as the in-memory representation of the data described and as parsers for the data source. The parsing functions are robust, automatically detecting and recording errors in the data stream without halting parsing. We show the parsers are type-correct, returning data whose type matches the simple-type interpretation of the specification. We also prove the parsers are “error-correct,” accurately reporting the number of physical and semantic errors that occur in the returned data. We use the calculus to describe the features of various data description languages, and we discuss how we have used the calculus to improve pads.