|
| 1 | +% SPDX-License-Identifier: PMPL-1.0-or-later |
| 2 | +% |
| 3 | +% References for TypeQL-Experimental: database query safety via |
| 4 | +% Idris2 QTT (linear types, session types, effects, modal types) |
| 5 | +% |
| 6 | +
|
| 7 | +@article{atkey2018, |
| 8 | + author = {Robert Atkey}, |
| 9 | + title = {Syntax and Semantics of Quantitative Type Theory}, |
| 10 | + booktitle = {Proceedings of the ACM/IEEE Symposium on Logic in Computer |
| 11 | + Science (LICS)}, |
| 12 | + pages = {56--65}, |
| 13 | + year = {2018}, |
| 14 | + publisher = {ACM}, |
| 15 | + note = {Introduces Quantitative Type Theory (QTT), unifying linear and |
| 16 | + dependent types via usage annotations. TypeQL-Experimental's |
| 17 | + core type discipline is built on QTT to track resource usage |
| 18 | + in database queries.} |
| 19 | +} |
| 20 | + |
| 21 | +@article{brady2021, |
| 22 | + author = {Edwin Brady}, |
| 23 | + title = {Idris 2: Quantitative Type Theory in Practice}, |
| 24 | + booktitle = {Proceedings of the European Conference on Object-Oriented |
| 25 | + Programming (ECOOP)}, |
| 26 | + series = {Leibniz International Proceedings in Informatics}, |
| 27 | + volume = {194}, |
| 28 | + pages = {9:1--9:26}, |
| 29 | + year = {2021}, |
| 30 | + note = {Describes the Idris 2 implementation of QTT. TypeQL-Experimental |
| 31 | + is implemented in Idris 2, leveraging its dependent types and |
| 32 | + linearity annotations for query safety guarantees.} |
| 33 | +} |
| 34 | + |
| 35 | +@article{girard1987, |
| 36 | + author = {Jean-Yves Girard}, |
| 37 | + title = {Linear Logic}, |
| 38 | + journal = {Theoretical Computer Science}, |
| 39 | + volume = {50}, |
| 40 | + number = {1}, |
| 41 | + pages = {1--102}, |
| 42 | + year = {1987}, |
| 43 | + note = {Introduces linear logic, the logical foundation for resource-aware |
| 44 | + computation. TypeQL-Experimental uses linear types to ensure |
| 45 | + database connections and cursors are used exactly once.} |
| 46 | +} |
| 47 | + |
| 48 | +@article{honda1998, |
| 49 | + author = {Kohei Honda and Vasco T. Vasconcelos and Makoto Kubo}, |
| 50 | + title = {Language Primitives and Type Discipline for Structured |
| 51 | + Communication-Based Programming}, |
| 52 | + booktitle = {Proceedings of the European Symposium on Programming (ESOP)}, |
| 53 | + series = {Lecture Notes in Computer Science}, |
| 54 | + volume = {1381}, |
| 55 | + pages = {122--138}, |
| 56 | + year = {1998}, |
| 57 | + publisher = {Springer}, |
| 58 | + note = {Establishes session types for structured communication. TypeQL- |
| 59 | + Experimental uses session types to encode database transaction |
| 60 | + protocols, ensuring correct sequencing of operations.} |
| 61 | +} |
| 62 | + |
| 63 | +@article{wadler2012, |
| 64 | + author = {Philip Wadler}, |
| 65 | + title = {Propositions as Sessions}, |
| 66 | + booktitle = {Proceedings of the ACM SIGPLAN International Conference on |
| 67 | + Functional Programming (ICFP)}, |
| 68 | + pages = {273--286}, |
| 69 | + year = {2012}, |
| 70 | + publisher = {ACM}, |
| 71 | + note = {Connects linear logic propositions to session types via the |
| 72 | + Curry-Howard correspondence. TypeQL-Experimental's session-typed |
| 73 | + transactions are grounded in this correspondence.} |
| 74 | +} |
| 75 | + |
| 76 | +@article{plotkin2003, |
| 77 | + author = {Gordon D. Plotkin and John Power}, |
| 78 | + title = {Algebraic Operations and Generic Effects}, |
| 79 | + journal = {Applied Categorical Structures}, |
| 80 | + volume = {11}, |
| 81 | + number = {1}, |
| 82 | + pages = {69--94}, |
| 83 | + year = {2003}, |
| 84 | + note = {Formalises computational effects via algebraic operations. |
| 85 | + TypeQL-Experimental uses algebraic effects to safely encapsulate |
| 86 | + database I/O, transactions, and error handling.} |
| 87 | +} |
| 88 | + |
| 89 | +@inproceedings{chu2017, |
| 90 | + author = {Shumo Chu and Konstantin Weitz and Alvin Cheung |
| 91 | + and Dan Suciu}, |
| 92 | + title = {{HoTTSQL}: Proving Query Rewrites with Univalent {SQL} |
| 93 | + Semantics}, |
| 94 | + booktitle = {Proceedings of the ACM SIGPLAN Conference on Programming |
| 95 | + Language Design and Implementation (PLDI)}, |
| 96 | + pages = {510--524}, |
| 97 | + year = {2017}, |
| 98 | + publisher = {ACM}, |
| 99 | + note = {Applies homotopy type theory to prove SQL query equivalences. |
| 100 | + TypeQL-Experimental draws on HoTTSQL's approach to verified |
| 101 | + query rewriting within the QTT framework.} |
| 102 | +} |
| 103 | + |
| 104 | +@inproceedings{chlipala2015, |
| 105 | + author = {Adam Chlipala}, |
| 106 | + title = {Ur/Web: A Simple Model for Programming the Web}, |
| 107 | + booktitle = {Proceedings of the ACM SIGPLAN-SIGACT Symposium on Principles |
| 108 | + of Programming Languages (POPL)}, |
| 109 | + pages = {153--165}, |
| 110 | + year = {2015}, |
| 111 | + publisher = {ACM}, |
| 112 | + note = {Presents Ur/Web's type-safe database access with compile-time |
| 113 | + SQL validation. TypeQL-Experimental extends this approach with |
| 114 | + QTT-based linearity and session types for richer safety |
| 115 | + guarantees.} |
| 116 | +} |
| 117 | + |
| 118 | +@inproceedings{pfenning2001, |
| 119 | + author = {Frank Pfenning and Rowan Davies}, |
| 120 | + title = {A Judgmental Reconstruction of Modal Logic}, |
| 121 | + journal = {Mathematical Structures in Computer Science}, |
| 122 | + volume = {11}, |
| 123 | + number = {4}, |
| 124 | + pages = {511--540}, |
| 125 | + year = {2001}, |
| 126 | + note = {Reconstructs modal logic via judgmental methodology. TypeQL- |
| 127 | + Experimental's modal types for query temporality (past states, |
| 128 | + future obligations) are based on this framework.} |
| 129 | +} |
| 130 | + |
| 131 | +@inproceedings{krishnaswami2020, |
| 132 | + author = {Neel Krishnaswami and Pierre Pradic and Nick Benton}, |
| 133 | + title = {Integrating Linear and Dependent Types}, |
| 134 | + booktitle = {Proceedings of the ACM SIGPLAN-SIGACT Symposium on Principles |
| 135 | + of Programming Languages (POPL)}, |
| 136 | + year = {2020}, |
| 137 | + publisher = {ACM}, |
| 138 | + note = {Addresses the tension between linear and dependent types. |
| 139 | + TypeQL-Experimental's type system navigates this integration |
| 140 | + following the patterns established here.} |
| 141 | +} |
| 142 | + |
| 143 | +@article{brady2013, |
| 144 | + author = {Edwin Brady}, |
| 145 | + title = {Idris, a General-Purpose Dependently Typed Programming |
| 146 | + Language: Design and Implementation}, |
| 147 | + journal = {Journal of Functional Programming}, |
| 148 | + volume = {23}, |
| 149 | + number = {5}, |
| 150 | + pages = {552--593}, |
| 151 | + year = {2013}, |
| 152 | + note = {Describes the design of Idris 1, predecessor to Idris 2. |
| 153 | + Establishes the practical dependent types tradition that |
| 154 | + TypeQL-Experimental inherits and extends with QTT.} |
| 155 | +} |
| 156 | + |
| 157 | +@inproceedings{hillerström2017, |
| 158 | + author = {Daniel Hillerstr\"{o}m and Sam Lindley}, |
| 159 | + title = {Liberating Effects with Rows and Handlers}, |
| 160 | + booktitle = {Proceedings of the ACM SIGPLAN International Workshop on |
| 161 | + Type-Driven Development (TyDe)}, |
| 162 | + pages = {15--27}, |
| 163 | + year = {2017}, |
| 164 | + publisher = {ACM}, |
| 165 | + note = {Presents row-typed effect handlers. TypeQL-Experimental's |
| 166 | + effect system for database operations uses row-based effect |
| 167 | + tracking to compose transaction handlers safely.} |
| 168 | +} |
0 commit comments