{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,9]],"date-time":"2025-10-09T20:12:10Z","timestamp":1760040730999,"version":"build-2065373602"},"publisher-location":"New York, NY, USA","reference-count":33,"publisher":"ACM","content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2025,10,9]]},"DOI":"10.1145\/3759164.3759347","type":"proceedings-article","created":{"date-parts":[[2025,10,9]],"date-time":"2025-10-09T19:17:47Z","timestamp":1760037467000},"page":"30-37","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Plinth: A Plugin-Powered Language Built on Haskell (Experience Report)"],"prefix":"10.1145","author":[{"ORCID":"https:\/\/orcid.org\/0009-0004-6712-6043","authenticated-orcid":false,"given":"Ziyang","family":"Liu","sequence":"first","affiliation":[{"name":"Input Output, Millbrae, USA"}]},{"ORCID":"https:\/\/orcid.org\/0009-0009-3521-941X","authenticated-orcid":false,"given":"Kenneth","family":"MacKenzie","sequence":"additional","affiliation":[{"name":"Input Output, Edinburgh, United Kingdom"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4687-2739","authenticated-orcid":false,"given":"Roman","family":"Kireev","sequence":"additional","affiliation":[{"name":"Input Output, Edinburgh, United Kingdom"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0602-1657","authenticated-orcid":false,"given":"Michael","family":"Peyton Jones","sequence":"additional","affiliation":[{"name":"Input Output, London, United Kingdom"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7619-6378","authenticated-orcid":false,"given":"Philip","family":"Wadler","sequence":"additional","affiliation":[{"name":"Input Output, Edinburgh, United Kingdom"}]},{"ORCID":"https:\/\/orcid.org\/0009-0005-6241-5273","authenticated-orcid":false,"given":"Manuel","family":"Chakravarty","sequence":"additional","affiliation":[{"name":"Input Output, Utrecht, Netherlands"}]}],"member":"320","published-online":{"date-parts":[[2025,10,9]]},"reference":[{"key":"e_1_3_2_1_1_1","volume-title":"Plotkin","author":"Abadi Mart\u00edn","year":"1993","unstructured":"Mart\u00edn Abadi, Luca Cardelli, and Gordon D. Plotkin. 1993. Types for the Scott Numerals. https:\/\/api.semanticscholar.org\/CorpusID:126166954"},{"key":"e_1_3_2_1_2_1","unstructured":"Aiken. 2025. Aiken | The modern smart contract platform for Cardano. https:\/\/aiken-lang.org\/"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/DSD.2010.21"},{"key":"e_1_3_2_1_4_1","unstructured":"Matthias Benkort. 2025. Plutus Contract Blueprint. https:\/\/cips.cardano.org\/cip\/CIP-57"},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.17487\/RFC8949"},{"key":"e_1_3_2_1_6_1","volume-title":"Categorifier: Interpret Haskell programs into any cartesian closed category.. https:\/\/github.com\/con-kitty\/categorifier","year":"2025","unstructured":"Categorifier. 2025. Categorifier: Interpret Haskell programs into any cartesian closed category.. https:\/\/github.com\/con-kitty\/categorifier"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-54455-3_37"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/3677998.3678222"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-33636-3_10"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2544174.2500586"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/3110271"},{"key":"e_1_3_2_1_12_1","volume-title":"Formal Description of Programming Concepts - III: Proceedings of the IFIP TC 2\/WG 2.2 Working Conference on Formal Description of Programming Concepts - III","author":"Felleisen Matthias","year":"1986","unstructured":"Matthias Felleisen and Daniel P. Friedman. 1987. Control Operators, the SECD-Machine, and the \u03bb -Calculus. In Formal Description of Programming Concepts - III: Proceedings of the IFIP TC 2\/WG 2.2 Working Conference on Formal Description of Programming Concepts - III, Ebberup, Denmark, 25-28 August 1986. North-Holland, 193\u2013222."},{"key":"e_1_3_2_1_13_1","unstructured":"Jean-Yves Girard. 1972. Interpr\u00e9tation fonctionnelle et \u00e9limination des coupures dans l\u2019arithm\u00e9tique d\u2019ordre sup\u00e9rieur. PhD Thesis Universit\u00e9 de Paris VII."},{"key":"e_1_3_2_1_14_1","unstructured":"Helios. 2025. Helios. https:\/\/github.com\/HeliosLang\/compiler"},{"key":"e_1_3_2_1_15_1","unstructured":"John Hughes. 2025. Modules in UPLC. https:\/\/github.com\/cardano-foundation\/CIPs\/pull\/946"},{"key":"e_1_3_2_1_16_1","volume-title":"Jie JW Wu, and Fatemeh H. Fard","author":"Joel Sathvik","year":"2024","unstructured":"Sathvik Joel, Jie JW Wu, and Fatemeh H. Fard. 2024. A Survey on LLM-based Code Generation for Low-Resource and Domain-Specific Programming Languages. arxiv:2410.03981. arxiv:2410.03981"},{"key":"e_1_3_2_1_17_1","unstructured":"Michael Peyton Jones. 2023. Sums-of-products in Plutus Core. https:\/\/cips.cardano.org\/cip\/CIP-85"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/232627.232630"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0167-6423(97)00029-4"},{"key":"e_1_3_2_1_20_1","volume-title":"Functional and Logic Programming","author":"Kiselyov Oleg","unstructured":"Oleg Kiselyov. 2014. The Design and Implementation of BER\u00a0MetaOCaml. In Functional and Logic Programming. Springer International Publishing, Cham. 86\u2013102. isbn:978-3-319-07151-0"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2023.103051"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/2847538.2847541"},{"key":"e_1_3_2_1_23_1","unstructured":"OpShin. 2025. OpShin: A simple pythonic programming language for Smart Contracts on Cardano. https:\/\/github.com\/OpShin\/opshin"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-33636-3_15"},{"key":"e_1_3_2_1_25_1","unstructured":"plu-ts. 2025. plu-ts. https:\/\/github.com\/HarmonicLabs\/plu-ts"},{"key":"e_1_3_2_1_26_1","unstructured":"Plutarch. 2025. Plutarch. https:\/\/github.com\/Plutonomicon\/plutarch-plutus"},{"key":"e_1_3_2_1_27_1","unstructured":"Plutus Core Team. 2025. Formal Specification of the Plutus Core Language. https:\/\/github.com\/IntersectMBO\/plutus\/tree\/master\/doc\/plutus-core-spec"},{"key":"e_1_3_2_1_28_1","unstructured":"Scalus. 2025. Scalus - DApps Development Platform for Cardano. https:\/\/scalus.org\/"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-54455-3_35"},{"key":"e_1_3_2_1_30_1","unstructured":"Mike Sperber. 2023. Fast Deep Learning with Categories. https:\/\/icfp23.sigplan.org\/details\/FHPNC-2023\/6\/Fast-Deep-Learning-with-Categories"},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/258993.259019"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.4230\/OASICS.FMBC.2024.10"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01018828"}],"event":{"name":"Haskell '25: 18th ACM SIGPLAN International Haskell Symposium","location":"Singapore Singapore","acronym":"Haskell '25","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGAda ACM Special Interest Group on Ada Programming Language"]},"container-title":["Proceedings of the 18th ACM SIGPLAN International Haskell Symposium"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3759164.3759347","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,9]],"date-time":"2025-10-09T19:29:19Z","timestamp":1760038159000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3759164.3759347"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,10,9]]},"references-count":33,"alternative-id":["10.1145\/3759164.3759347","10.1145\/3759164"],"URL":"https:\/\/doi.org\/10.1145\/3759164.3759347","relation":{},"subject":[],"published":{"date-parts":[[2025,10,9]]},"assertion":[{"value":"2025-10-09","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}