References¶
[UnQL] | Peter Buneman, Susan Davidson, Gerd Hillebrand, and Dan Suciu. “A Query Language and Optimization Techniques for Unstructured Data”. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.33.2802 http://dl.acm.org/citation.cfm?id=233368 http://homepages.inf.ed.ac.uk/opb/papers/SIGMOD1996.pdf |
[coSQL2011] | Erik Meijer and Gavin Bierman. “A co-Relational Model of Data for Large Shared Data Banks”, Comm. ACM, 54(4) April 2011. http://queue.acm.org/detail.cfm?id=1961297 |
[coSQL2012] | Maarten Fokkinga. “SQL versus coSQL — a compendium to Erik Meijer’s paper”, Jan 2012. http://wwwhome.ewi.utwente.nl/~fokkinga/mmf2011p.pdf |
[MCQL] | (1, 2) Torsten Grust. “Monads Comprehensions: A Versatile Representation for Queries”. University of Konstanz, Department of Computer and Information Science, 78457 Konstanz, Germany. |
[Peyton1987] | Peyton, Simon. “The Implementation of Functional Programming Languages”. Prentince-Hall, 1987. Available at: http://research.microsoft.com/en-us/um/people/simonpj/papers/slpj-book-1987/start.htm |
[Burstall1977] | Bustall, R and Darlington, John. “A Transformation System for Developing Recursive Programs”. Journal of the Assooat~on for Computing Machinery, Vol 24, No 1, January 1977, pp. 44-67. Available at: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.19.4684 |
[QLFunc] | Torsten Grust and Marc H. Scholl. “How to comprehend queries functionally”. University of Konstanz, Department of Computer and Information Science, 78457 Konstanz, Germany. |
[MAPRED] | Dean, Jeffrey and Ghemawat, Sanjay. “MapReduce: Simplified Data Processing on Large Clusters”. Google Inc. Available at ... |
[Hutton1999] | Hutton, Graham. “A tutorial on the universality and expressiveness of fold”. University of Nottingham, UK. |
Notes¶
foldr notation¶
[1] | Notational differences for the same concept: whereas in [QLFunc] we see \({\bf foldr}^\tau (\oplus)\, z\, []^\tau\) in [MCQL] we see \((|\, z; \oplus\, |)\) We choose a notation that’s easy to read in python code comments and
inlined documentation. In this documents (specially the parts extracted
from source code) you’ll see |
[2] | Why does [MCQL] says \({\small ([], \uparrow)}\) is a monoid if \({\small \uparrow :: a \times [a] \rightarrow [a]}\) and \({\small x \uparrow [] = [x] \neq x}\)? |