Bibliography
Angiuli, Carlo, Edward Morehouse, Daniel R. Licata, and Robert Harper. 2014. “Homotopical Patch Theory.” In “Proceedings of the 19th ACM SIGPLAN International Conference on Functional Programming, ICFP 2014.” Special issue, Proceedings of the 19th ACM SIGPLAN International Conference on Functional Programming, ICFP 2014,. https://doi.org/10.1145/2692915.2628158.
Apache Software Foundation. 2024. “Apache Avro Specification.”.
Apache Software Foundation. 2024. “Apache Parquet Columnar Storage Format.”.
Appel, Andrew W. 1998. Modern Compiler Implementation in ML. Cambridge University Press.
Awodey, Steve. 2010. Category Theory. 2nd ed. Vol. 52, pt. 52. Oxford Logic Guides. Oxford University Press.
Barr, Michael, and Charles Wells. 1990. Category Theory for Computing Science. Prentice Hall International Series in Computer Science. Prentice Hall.
Bird, Richard, and Oege de Moor. 1997. Algebra of Programming. Prentice Hall International Series in Computer Science. Prentice Hall.
Bluesky PBC. n.d. “AT Protocol Specification.”
Bohannon, Aaron, Benjamin C. Pierce, and Jeffrey A. Vaughan. 2006. “Relational Lenses: A Language for Updatable Views.” In Proceedings of the Twenty-Fifth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, PODS 2006, edited by Stijn Vansummeren, Proceedings of the Twenty-Fifth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, PODS 2006. ACM. https://doi.org/10.1145/1142351.1142399.
Brunsfeld, Max. 2018. “Tree-Sitter: A New Parsing System for Programming Tools.”. https://www.thestrangeloop.com/2018/tree-sitter%E2%80%94a-new-parsing-system-for-programming-tools.html.
Cartmell, John. 1978. “Generalised Algebraic Theories and Contextual Categories.” D.Phil. thesis. https://ncatlab.org/nlab/files/Cartmell-Thesis.pdf.
Cartmell, John. 1986. “Generalised Algebraic Theories and Contextual Categories.” Annals of Pure and Applied Logic 32 : 209–43. https://doi.org/10.1016/0168-0072(86)90053-9.
Chacon, Scott, and Ben Straub. 2014. Pro Git. 2nd ed. Apress. https://doi.org/10.1007/978-1-4842-0076-6.
Church, Alonzo. 1940. “A Formulation of the Simple Theory of Types.” The Journal of Symbolic Logic 5 (2): 56–68. https://doi.org/10.2307/2266170.
Clarke, Bryce, Derek Elkins, Jeremy Gibbons, et al. 2024. “Profunctor Optics, A Categorical Update.” Compositionality,. https://arxiv.org/abs/2001.07488.
Codd, E. F. 1970. “A Relational Model of Data for Large Shared Data Banks.” Communications of the ACM 13 (6): 377–87. https://doi.org/10.1145/362384.362685.
Czarnecki, Krzysztof, J. Nathan Foster, Zhenjiang Hu, Ralf Lämmel, Andy Schürr, and James F. Terwilliger. 2009. “Bidirectional Transformations: A Cross-Discipline Perspective.” In Theory and Practice of Model Transformations, 2nd International Conference, ICMT 2009, edited by Richard F. Paige, vol. 5563 of Theory and Practice of Model Transformations, 2nd International Conference, ICMT 2009. Lecture Notes in Computer Science. Springer. https://doi.org/10.1007/978-3-642-02408-5\_19.
Damas, Luís, and Robin Milner. 1982. “Principal Type-Schemes for Functional Programs.” In “Conference Record of the Ninth Annual ACM Symposium on Principles of Programming Languages, POPL 1982.” Special issue, Conference Record of the Ninth Annual ACM Symposium on Principles of Programming Languages, POPL 1982, 207–12. https://doi.org/10.1145/582153.582176.
DeCandia, Giuseppe, Deniz Hastorun, Madan Jampani, et al. 2007. “Dynamo: Amazon's Highly Available Key-Value Store.” In “Proceedings of the 21st ACM Symposium on Operating Systems Principles, SOSP 2007.” Special issue, Proceedings of the 21st ACM Symposium on Operating Systems Principles, SOSP 2007, 205–20. https://doi.org/10.1145/1294261.1294281.
Diskin, Zinovy, Yingfei Xiong, and Krzysztof Czarnecki. 2011. “From State- to Delta-Based Bidirectional Model Transformations: The Asymmetric Case.” Journal of Object Technology 10 : 6:1–25. https://doi.org/10.5381/jot.2011.10.1.a6.
Dybjer, Peter. 1996. “Internal Type Theory.” In Types for Proofs and Programs, TYPES 1995, edited by Stefano Berardi and Mario Coppo, vol. 1158 of Types for Proofs and Programs, TYPES 1995. Lecture Notes in Computer Science. Springer. https://doi.org/10.1007/3-540-61780-9\_66.
Eilenberg, Samuel, and Saunders Mac Lane. 1945. “General Theory of Natural Equivalences.” Transactions of the American Mathematical Society 58 : 231–94. https://doi.org/10.2307/1990284.
Fiore, Marcelo P., Gordon D. Plotkin, and Daniele Turi. 1999. “Abstract Syntax and Variable Binding.” In “14th Annual IEEE Symposium on Logic in Computer Science, LICS 1999.” Special issue, 14th Annual IEEE Symposium on Logic in Computer Science, LICS 1999, 193–202. https://doi.org/10.1109/LICS.1999.782615.
Ford, Bryan. 2002. “Packrat Parsing: Simple, Powerful, Lazy, Linear Time, Functional Pearl.” In “Proceedings of the Seventh ACM SIGPLAN International Conference on Functional Programming, ICFP 2002.” Special issue, Proceedings of the Seventh ACM SIGPLAN International Conference on Functional Programming, ICFP 2002, 36–47. https://doi.org/10.1145/581478.581483.
Foster, J. Nathan, Michael B. Greenwald, Jonathan T. Moore, Benjamin C. Pierce, and Alan Schmitt. 2007. “Combinators for Bidirectional Tree Transformations: A Linguistic Approach to the View-Update Problem.” ACM Transactions on Programming Languages and Systems 29 (3): 17. https://doi.org/10.1145/1232420.1232424.
Foster, J. Nathan. 2009. “Bidirectional Programming Languages.” Doctoral dissertation. https://repository.upenn.edu/edissertations/56/.
Furuhashi, Sadayuki. 2024. “MessagePack: Efficient Binary Serialization Format.”.
Girard, Jean-Yves. 1972. “Interprétation Fonctionnelle Et élimination Des Coupures De L'arithmétique D'ordre Supérieur.” Thèse d'État.
Goguen, Joseph A. 1991. “A Categorical Manifesto.” Mathematical Structures in Computer Science 1 (1): 49–67. https://doi.org/10.1017/S0960129500000050.
Goguen, Joseph A., and Rod M. Burstall. 1992. “Institutions: Abstract Model Theory for Specification and Programming.” Journal of the ACM 39 (1): 95–146. https://doi.org/10.1145/147508.147524.
Google. 2024. “Protocol Buffers Developer Guide.”.
HL7 International. 2024. “HL7 FHIR: Fast Healthcare Interoperability Resources.”.
Haas, Andreas, Andreas Rossberg, Derek L. Schuff, et al. 2017. “Bringing the Web up to Speed with WebAssembly.” In “Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2017.” Special issue, Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2017, 185–200. https://doi.org/10.1145/3062341.3062363.
Harper, Robert. 2016. Practical Foundations for Programming Languages. 2nd ed. Cambridge University Press.
Hindley, J. Roger. 1969. “The Principal Type-Scheme of an Object in Combinatory Logic.” Transactions of the American Mathematical Society 146 : 29–60. https://doi.org/10.2307/1995158.
Hofmann, Martin, Benjamin C. Pierce, and Daniel Wagner. 2011. “Symmetric Lenses.” In Proceedings of the 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2011, edited by Thomas Ball and Mooly Sagiv, Proceedings of the 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2011. ACM. https://doi.org/10.1145/1926385.1926428.
Hofmann, Martin. 1997. “Syntax and Semantics of Dependent Types.” In Semantics and Logics of Computation, edited by Andrew M. Pitts and P. Dybjer, vol. 14 of Semantics and Logics of Computation. Publications of the Newton Institute. Cambridge University Press.
JSON Schema Organization. 2022. “JSON Schema Specification, Draft 2020-12.”.
Jacobs, Bart. 1999. Categorical Logic and Type Theory. Vol. 141, pt. 141. Studies in Logic and the Foundations of Mathematics. Elsevier.
Kelly, G. M. 1982. Basic Concepts of Enriched Category Theory. Vol. 64, pt. 64. London Mathematical Society Lecture Note Series. Cambridge University Press. http://www.tac.mta.ca/tac/reprints/articles/10/tr10abs.html.
Kleppmann, Martin. 2017. Designing Data-Intensive Applications. O'Reilly Media.
Kmett, Edward. 2012. “lens: Lenses, Folds and Traversals.”.
Lakshman, Avinash, and Prashant Malik. 2010. “Cassandra: A Decentralized Structured Storage System.” ACM SIGOPS Operating Systems Review 44 (2): 35–40. https://doi.org/10.1145/1773912.1773922.
Lambek, J., and P. J. Scott. 1986. Introduction to Higher-Order Categorical Logic. Vol. 7, pt. 7. Cambridge Studies in Advanced Mathematics. Cambridge University Press.
Landin, Peter J. 1966. “The Next 700 Programming Languages.” Communications of the ACM 9 (3): 157–66. https://doi.org/10.1145/365230.365257.
Lawvere, F. William. 1963. “Functorial Semantics of Algebraic Theories.” Doctoral dissertation.
Lawvere, F. William, and Stephen H. Schanuel. 2009. Conceptual Mathematics: A First Introduction to Categories. 2nd ed. Cambridge University Press.
Leinster, Tom. 2014. Basic Category Theory. Vol. 143, pt. 143. Cambridge Studies in Advanced Mathematics. Cambridge University Press. https://arxiv.org/abs/1612.09375.
Litt, Geoffrey, Peter van Hardenberg, and Orion Henry. 2020. “Project Cambria: Translate Your Data with Lenses.”. https://www.inkandswitch.com/cambria/.
Lane, Saunders Mac. 1998. Categories for the Working Mathematician. 2nd ed. Vol. 5, pt. 5. Graduate Texts in Mathematics. Springer. https://doi.org/10.1007/978-1-4757-4721-8.
Martin-Löf, Per. 1984. Intuitionistic Type Theory. Vol. 1, pt. 1. Studies in Proof Theory, Lecture Notes. Bibliopolis, Naples.
Meijer, Erik, Maarten Fokkinga, and Ross Paterson. 1991. “Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire.” In “Functional Programming Languages and Computer Architecture, 5th ACM Conference (FPCA 1991).” Special issue, Functional Programming Languages and Computer Architecture, 5th ACM Conference (FPCA 1991), Lecture Notes in Computer Science, vol. 523 : 124–44. https://doi.org/10.1007/3540543961_7.
Melnik, Sergey, Andrey Gubarev, Jing Jing Long, et al. 2010. “Dremel: Interactive Analysis of Web-Scale Datasets.” Proceedings of the VLDB Endowment 3 (1): 330–39. https://doi.org/10.14778/1920841.1920886.
Merkle, Ralph C. 1988. “A Digital Signature Based on a Conventional Encryption Function.” In Advances in Cryptology: CRYPTO 1987, edited by Carl Pomerance, vol. 293 of Advances in Cryptology: CRYPTO 1987. Lecture Notes in Computer Science. Springer. https://doi.org/10.1007/3-540-48184-2\_32.
Milewski, Bartosz. 2014. “Category: The Essence of Composition.”. https://bartoszmilewski.com/2014/11/04/category-the-essence-of-composition/.
Milner, Robin. 1978. “A Theory of Type Polymorphism in Programming.” Journal of Computer and System Sciences 17 (3): 348–75. https://doi.org/10.1016/0022-0000(78)90014-4.
Mimram, Samuel, and Cinzia Di Giusto. 2013. “A Categorical Theory of Patches.” Electronic Notes in Theoretical Computer Science 298 : 283–307. https://doi.org/10.1016/j.entcs.2013.09.018.
Pacheco, Hugo, Alcino Cunha, and Zhenjiang Hu. 2012. “Delta Lenses over Inductive Types.” Electronic Communications of the EASST,. https://journal.ub.tu-berlin.de/eceasst/article/view/713.
Pickering, Matthew, Jeremy Gibbons, and Nicolas Wu. 2017. “Profunctor Optics: Modular Data Accessors.” The Art, Science, And Engineering of Programming 1 (2): 7. https://doi.org/10.22152/programming-journal.org/2017/1/7.
Pierce, Benjamin C. 2002. Types and Programming Languages. MIT Press.
Plotkin, Gordon D. 1975. “Call-by-Name, Call-by-Value and the \lambda-Calculus”. Theoretical Computer Science 1 (2): 125–59. https://doi.org/10.1016/0304-3975(75)90017-1.
Reynolds, John C. 1983. “Types, Abstraction and Parametric Polymorphism.” In Information Processing 83: Proceedings of the IFIP 9th World Computer Congress, edited by R. E. A. Mason, vol. 9 of Information Processing 83: Proceedings of the IFIP 9th World Computer Congress. IFIP Congress Series. Elsevier Science Publishers B.V. (North-Holland).
Riehl, Emily. 2016. Category Theory in Context. Aurora: Dover Modern Math Originals. Dover Publications. https://math.jhu.edu/~eriehl/context/.
Roundy, David. 2005. “Darcs: Distributed Version Management in Haskell.” In “Proceedings of the 2005 ACM SIGPLAN Workshop on Haskell (Haskell '05).” Special issue, Proceedings of the 2005 ACM SIGPLAN Workshop on Haskell (Haskell '05), 1–4. https://doi.org/10.1145/1088348.1088349.
Rust and WebAssembly Working Group. 2024. “wasm-bindgen: High-Level Interactions between Wasm Modules and JavaScript.”.
Rydeheard, D. E., and Rod M. Burstall. 1988. Computational Category Theory. Prentice Hall International Series in Computer Science. Prentice Hall.
Sannella, Donald, and Andrzej Tarlecki. 2012. Foundations of Algebraic Specification and Formal Software Development. Monographs in Theoretical Computer Science. An EATCS Series. Springer. https://doi.org/10.1007/978-3-642-17336-3.
Schultz, Patrick, David I. Spivak, Christina Vasilakopoulou, and Ryan Wisnesky. 2017. “Algebraic Databases.” Theory and Applications of Categories 32 (16): 547–619. http://www.tac.mta.ca/tac/volumes/32/16/32-16.pdf.
Shapiro, Marc, Nuno Preguiça, Carlos Baquero, and Marek Zawirski. 2011. “Conflict-Free Replicated Data Types.” In “Stabilization, Safety, And Security of Distributed Systems (SSS 2011).” Special issue, Stabilization, Safety, And Security of Distributed Systems (SSS 2011), Lecture Notes in Computer Science, vol. 6976 : 386–400. https://doi.org/10.1007/978-3-642-24550-3_29.
Spivak, David I. 2012. “Functorial Data Migration.” Information and Computation 217 : 31–51. https://doi.org/10.1016/j.ic.2012.05.001.
Spivak, David I., and Ryan Wisnesky. 2015. “Relational Foundations for Functorial Data Migration.” In Proceedings of the 15th Symposium on Database Programming Languages, DBPL 2015, edited by James Cheney and Thomas Neumann, Proceedings of the 15th Symposium on Database Programming Languages, DBPL 2015. ACM. https://doi.org/10.1145/2815072.2815075.
Stevens, Perdita. 2010. “Bidirectional Model Transformations in QVT: Semantic Issues and Open Questions.” Software and Systems Modeling 9 (1): 7–20. https://doi.org/10.1007/s10270-008-0109-9.
The Univalent Foundations Program. 2013. Homotopy Type Theory: Univalent Foundations of Mathematics. Institute for Advanced Study. https://homotopytypetheory.org/book/.
Turner, David A. 2004. “Total Functional Programming.” Journal of Universal Computer Science 10 (7): 751–68. https://doi.org/10.3217/jucs-010-07-0751.
W3C WebAssembly Working Group. 2019. “WebAssembly Core Specification.” December.
Wadler, Philip. 1989. “Theorems for Free!.” In Proceedings of the Fourth International Conference on Functional Programming Languages and Computer Architecture, FPCA 1989, edited by Joseph E. Stoy, Proceedings of the Fourth International Conference on Functional Programming Languages and Computer Architecture, FPCA 1989. ACM. https://doi.org/10.1145/99370.99404.
Wagner, Tim A., and Susan L. Graham. 1998. “Efficient and Flexible Incremental Parsing.” ACM Transactions on Programming Languages and Systems 20 (5): 980–1013. https://doi.org/10.1145/293677.293678.
Wisnesky, Ryan. 2013. “Functional Query Languages with Categorical Types.” Doctoral dissertation.
Laarhoven, Twan van. 2009. “CPS Based Functional References.”.