Type inference in a database programming language
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Database programming in Machiavelli—a polymorphic language with static type inference
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
ACM SIGMOD Record
XML with data values: typechecking revisited
PODS '01 Proceedings of the twentieth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
Making smalltalk a database system
SIGMOD '84 Proceedings of the 1984 ACM SIGMOD international conference on Management of data
Fibonacci: a programming language for object databases
The VLDB Journal — The International Journal on Very Large Data Bases - Persistent object systems
Naturally Embedded Query Languages
ICDT '92 Proceedings of the 4th International Conference on Database Theory
Typechecking Top-Down Uniform Unranked Tree Transducers
ICDT '03 Proceedings of the 9th International Conference on Database Theory
Typechecking XML views of relational databases
ACM Transactions on Computational Logic (TOCL)
A practical functional programming system for databases
FPCA '81 Proceedings of the 1981 conference on Functional programming languages and computer architecture
CDuce: an XML-centric general-purpose language
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Pig latin: a not-so-foreign language for data processing
Proceedings of the 2008 ACM SIGMOD international conference on Management of data
Semantic subtyping: Dealing set-theoretically with function, union, intersection, and negation types
Journal of the ACM (JACM)
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
A co-relational model of data for large shared data banks
Communications of the ACM
ASTERIX: towards a scalable, semistructured data platform for evolving-world models
Distributed and Parallel Databases
Emerging trends in the enterprise data analytics: connecting Hadoop and DB2 warehouse
Proceedings of the 2011 ACM SIGMOD International Conference on Management of data
Queue - Data
Making standard ML a practical database programming language
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
On bridging relational and document-centric data stores
BNCOD'13 Proceedings of the 29th British National conference on Big Data
Hi-index | 0.00 |
We present a calculus for processing semistructured data that spans differences of application area among several novel query languages, broadly categorized as "NoSQL". This calculus lets users define their own operators, capturing a wider range of data processing capabilities, whilst providing a typing precision so far typical only of primitive hard-coded operators. The type inference algorithm is based on semantic type checking, resulting in type information that is both precise, and flexible enough to handle structured and semistructured data. We illustrate the use of this calculus by encoding a large fragment of Jaql, including operations and iterators over JSON, embedded SQL expressions, and co-grouping, and show how the encoding directly yields a typing discipline for Jaql as it is, namely without the addition of any type definition or type annotation in the code.