{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,26]],"date-time":"2025-06-26T04:53:02Z","timestamp":1750913582827,"version":"3.40.3"},"publisher-location":"Cham","reference-count":37,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031520372"},{"type":"electronic","value":"9783031520389"}],"license":[{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2023]]},"DOI":"10.1007\/978-3-031-52038-9_5","type":"book-chapter","created":{"date-parts":[[2024,1,9]],"date-time":"2024-01-09T06:02:40Z","timestamp":1704780160000},"page":"64-81","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["Rhyme: A Data-Centric Expressive Query Language for\u00a0Nested Data Structures"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-6054-2432","authenticated-orcid":false,"given":"Supun","family":"Abeysinghe","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2068-3238","authenticated-orcid":false,"given":"Tiark","family":"Rompf","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2024,1,10]]},"reference":[{"key":"5_CR1","unstructured":"Advent of code 2022. https:\/\/adventofcode.com\/2022\/day\/1. Accessed 27 Sept 2023"},{"key":"5_CR2","unstructured":"The asterix query language (aql). https:\/\/asterixdb.apache.org\/docs\/0.9.8\/aql\/manual.html. Accessed 27 Sept 2023"},{"key":"5_CR3","unstructured":"jq manual. https:\/\/jqlang.github.io\/jq\/manual\/. Accessed 27 Sept 2023"},{"key":"5_CR4","unstructured":"Xquery 3.1: an xml query language (2017). https:\/\/www.w3.org\/TR\/xquery-31\/. Accessed 27 Sept 2023"},{"key":"5_CR5","unstructured":"Jsoniq (2018). https:\/\/www.jsoniq.org\/. Accessed 27 Sept 2023"},{"key":"5_CR6","unstructured":"Zorba (2018). https:\/\/www.zorba.io\/. Accessed 27 Sept 2023"},{"key":"5_CR7","doi-asserted-by":"crossref","unstructured":"Abeysinghe, S., He, Q., Rompf, T.: Efficient incrementialization of correlated nested aggregate queries using relative partial aggregate indexes (RPAI). In: SIGMOD Conference, pp. 136\u2013149. ACM (2022)","DOI":"10.1145\/3514221.3517889"},{"key":"5_CR8","unstructured":"Abeysinghe, S., Wang, F., Essertel, G.M., Rompf, T.: Architecting intermediate layers for efficient composition of data management and machine learning systems. CoRR abs\/2311.02781 (2023)"},{"key":"5_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"225","DOI":"10.1007\/978-3-030-34175-6_12","volume-title":"Programming Languages and Systems","author":"N Amin","year":"2019","unstructured":"Amin, N., Byrd, W.E., Rompf, T.: Lightweight functional logic meta-programming. In: Lin, A.W. (ed.) APLAS 2019. LNCS, vol. 11893, pp. 225\u2013243. Springer, Cham (2019). https:\/\/doi.org\/10.1007\/978-3-030-34175-6_12"},{"key":"5_CR10","doi-asserted-by":"crossref","unstructured":"Augustsson, L., et al.: The verse calculus: a core calculus for deterministic functional logic programming. Proc. ACM Program. Lang. 7(ICFP), 417\u2013447 (2023)","DOI":"10.1145\/3607845"},{"key":"5_CR11","unstructured":"Bracevac, O., et al.: Graph IRS for impure higher-order languages (technical report). CoRR abs\/2309.08118 (2023)"},{"key":"5_CR12","doi-asserted-by":"crossref","unstructured":"Bra\u010devac, O., et al.: Graph IRS for impure higher-order languages: making aggressive optimizations affordable with precise effect dependencies. Proc. ACM Program. Lang. 7(OOPSLA2), 236:1\u2013236:31 (2023)","DOI":"10.1145\/3622813"},{"key":"5_CR13","unstructured":"Byrd, W.E.: Relational programming in miniKanren: techniques, applications, and implementations. Ph.D. thesis, Indiana University (2009)"},{"issue":"1","key":"5_CR14","doi-asserted-by":"publisher","first-page":"146","DOI":"10.1109\/69.43410","volume":"1","author":"S Ceri","year":"1989","unstructured":"Ceri, S., Gottlob, G., Tanca, L.: What you always wanted to know about Datalog (and never dared to ask). IEEE Trans. Knowl. Data Eng. 1(1), 146\u2013166 (1989)","journal-title":"IEEE Trans. Knowl. Data Eng."},{"key":"5_CR15","unstructured":"Essertel, G.M., Tahboub, R.Y., Decker, J.M., Brown, K.J., Olukotun, K., Rompf, T.: Flare: optimizing apache spark with native compilation for scale-up architectures and medium-size data. In: OSDI, pp. 799\u2013815. USENIX Association (2018)"},{"key":"5_CR16","unstructured":"Flores-Montoya, A., Schulte, E.M.: Datalog disassembly. In: USENIX Security Symposium, pp. 1075\u20131092. USENIX Association (2020)"},{"issue":"5","key":"5_CR17","doi-asserted-by":"publisher","first-page":"86","DOI":"10.1109\/MIC.2013.97","volume":"17","author":"D Florescu","year":"2013","unstructured":"Florescu, D., Fourny, G.: JSONiq: the history of a query language. IEEE Internet Comput. 17(5), 86\u201390 (2013)","journal-title":"IEEE Internet Comput."},{"key":"5_CR18","unstructured":"Goessner, S.: Jsonpath - xpath for json (2007). https:\/\/goessner.net\/articles\/JsonPath\/. Accessed 27 Sept 2023"},{"key":"5_CR19","unstructured":"GraphQL: A query language for your api. https:\/\/graphql.org\/. Accessed 27 Sept 2023"},{"key":"5_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"123","DOI":"10.1007\/978-3-642-37651-1_6","volume-title":"Programming Logics","author":"M Hanus","year":"2013","unstructured":"Hanus, M.: Functional logic programming: from theory to curry. In: Voronkov, A., Weidenbach, C. (eds.) Programming Logics. LNCS, vol. 7797, pp. 123\u2013168. Springer, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-37651-1_6"},{"key":"5_CR21","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"422","DOI":"10.1007\/978-3-319-41540-6_23","volume-title":"Computer Aided Verification","author":"H Jordan","year":"2016","unstructured":"Jordan, H., Scholz, B., Suboti\u0107, P.: Souffl\u00e9: on synthesis of program analyzers. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9780, pp. 422\u2013430. Springer, Cham (2016). https:\/\/doi.org\/10.1007\/978-3-319-41540-6_23"},{"issue":"2","key":"5_CR22","doi-asserted-by":"publisher","first-page":"253","DOI":"10.1007\/s00778-013-0348-4","volume":"23","author":"C Koch","year":"2014","unstructured":"Koch, C., et al.: DBToaster: higher-order delta processing for dynamic, frequently fresh views. VLDB J. 23(2), 253\u2013278 (2014)","journal-title":"VLDB J."},{"key":"5_CR23","unstructured":"Lattner, C., et al.: MLIR: a compiler infrastructure for the end of Moore\u2019s law. CoRR abs\/2002.11054 (2020)"},{"key":"5_CR24","doi-asserted-by":"crossref","unstructured":"Meijer, E., Beckman, B., Bierman, G.M.: LINQ: reconciling object, relations and XML in the.net framework. In: SIGMOD Conference, p. 706. ACM (2006)","DOI":"10.1145\/1142473.1142552"},{"issue":"4","key":"5_CR25","doi-asserted-by":"publisher","first-page":"498","DOI":"10.14778\/3436905.3436910","volume":"14","author":"I M\u00fcller","year":"2020","unstructured":"M\u00fcller, I., Fourny, G., Irimescu, S., Cikis, C.B., Alonso, G.: Rumble: data independence for large messy data sets. Proc. VLDB Endow. 14(4), 498\u2013506 (2020)","journal-title":"Proc. VLDB Endow."},{"key":"5_CR26","unstructured":"Ong, K.W., Papakonstantinou, Y., Vernoux, R.: The SQL++ semi-structured data model and query language: a capabilities survey of SQL-on-Hadoop, NoSQL and NewSQL databases. CoRR abs\/1405.3631 (2014)"},{"key":"5_CR27","unstructured":"Palkar, S., et al.: A common runtime for high performance data analysis. In: CIDR. www.cidrdb.org (2017)"},{"key":"5_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"389","DOI":"10.1007\/3-540-57877-3_26","volume-title":"Compiler Construction","author":"T Reps","year":"1994","unstructured":"Reps, T.: Solving demand versions of interprocedural analysis problems. In: Fritzson, P.A. (ed.) CC 1994. LNCS, vol. 786, pp. 389\u2013403. Springer, Heidelberg (1994). https:\/\/doi.org\/10.1007\/3-540-57877-3_26"},{"key":"5_CR29","unstructured":"Rogozhnikov, A.: EINOPS: clear and reliable tensor manipulations with Einstein-like notation. In: ICLR. OpenReview.net (2022)"},{"key":"5_CR30","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796819000054","volume":"29","author":"T Rompf","year":"2019","unstructured":"Rompf, T., Amin, N.: A SQL to C compiler in 500 lines of code. J. Funct. Program. 29, e9 (2019)","journal-title":"J. Funct. Program."},{"issue":"6","key":"5_CR31","doi-asserted-by":"publisher","first-page":"121","DOI":"10.1145\/2184319.2184345","volume":"55","author":"T Rompf","year":"2012","unstructured":"Rompf, T., Odersky, M.: Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs. Commun. ACM 55(6), 121\u2013130 (2012)","journal-title":"Commun. ACM"},{"key":"5_CR32","doi-asserted-by":"crossref","unstructured":"Sujeeth, A.K., et al.: Delite: A compiler architecture for performance-oriented embedded domain-specific languages. ACM Trans. Embed. Comput. Syst. 13(4s), 134:1\u2013134:25 (2014)","DOI":"10.1145\/2584665"},{"key":"5_CR33","doi-asserted-by":"crossref","unstructured":"Tahboub, R.Y., Essertel, G.M., Rompf, T.: How to architect a query compiler, revisited. In: SIGMOD Conference, pp. 307\u2013322. ACM (2018)","DOI":"10.1145\/3183713.3196893"},{"key":"5_CR34","unstructured":"Ullman, J.D.: Principles of Database and Knowledge-Base Systems, vol. II. Computer Science Press, Kuala Lumpur (1989)"},{"key":"5_CR35","unstructured":"Vasilache, N., et al.: Tensor comprehensions: framework-agnostic high-performance machine learning abstractions. CoRR abs\/1802.04730 (2018)"},{"key":"5_CR36","doi-asserted-by":"crossref","unstructured":"Wei, G., Chen, Y., Rompf, T.: Staged abstract interpreters: fast and modular whole-program analysis via meta-programming. Proc. ACM Program. Lang. 3(OOPSLA), 126:1\u2013126:32 (2019)","DOI":"10.1145\/3360552"},{"issue":"11","key":"5_CR37","doi-asserted-by":"publisher","first-page":"56","DOI":"10.1145\/2934664","volume":"59","author":"M Zaharia","year":"2016","unstructured":"Zaharia, M., et al.: Apache spark: a unified engine for big data processing. Commun. ACM 59(11), 56\u201365 (2016)","journal-title":"Commun. ACM"}],"container-title":["Lecture Notes in Computer Science","Practical Aspects of Declarative Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-52038-9_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,1,9]],"date-time":"2024-01-09T06:06:13Z","timestamp":1704780373000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-52038-9_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023]]},"ISBN":["9783031520372","9783031520389"],"references-count":37,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-52038-9_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2023]]},"assertion":[{"value":"10 January 2024","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"PADL","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Practical Aspects of Declarative Languages","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"London","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"United Kingdom","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2024","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"15 January 2024","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"16 January 2024","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"padl2024","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/popl24.sigplan.org\/home\/PADL-2024","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Double-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"HotCRP","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"25","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"13","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"52% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}