{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T06:12:41Z","timestamp":1750227161394,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":28,"publisher":"ACM","license":[{"start":{"date-parts":[[2020,8,9]],"date-time":"2020-08-09T00:00:00Z","timestamp":1596931200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Funda\u00e7\u00e3o para a Ci\u00eancia e a Tecnologia","award":["PTDC\/CCI-COM\/29946\/2017"],"award-info":[{"award-number":["PTDC\/CCI-COM\/29946\/2017"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2020,8,27]]},"DOI":"10.1145\/3406088.3409019","type":"proceedings-article","created":{"date-parts":[[2020,7,31]],"date-time":"2020-07-31T04:08:01Z","timestamp":1596168481000},"page":"54-66","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["Type your matrices for great good: a Haskell library of typed matrices and applications (functional pearl)"],"prefix":"10.1145","author":[{"given":"Armando","family":"Santos","sequence":"first","affiliation":[{"name":"University of Minho, Portugal \/ INESC TEC, Portugal"}]},{"given":"Jos\u00e9 N.","family":"Oliveira","sequence":"additional","affiliation":[{"name":"University of Minho, Portugal \/ INESC TEC, Portugal"}]}],"member":"320","published-online":{"date-parts":[[2020,8,9]]},"reference":[{"key":"e_1_3_2_2_1_1","volume-title":"Anne Greenbaum, Sven Hammarling, Alan McKenney, and Danny Sorensen.","author":"Anderson Edward","year":"1999","unstructured":"Edward Anderson, Zhaojun Bai, Christian Bischof, Susan Blackford, Jack Dongarra, Jeremy Du Croz, Anne Greenbaum, Sven Hammarling, Alan McKenney, and Danny Sorensen. 1999. LAPACK Users' guide. Vol. 9. Siam."},{"key":"e_1_3_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/2976002.2976016"},{"key":"e_1_3_2_2_3_1","volume-title":"Category Theory","author":"Awodey Steve","unstructured":"Steve Awodey. 2010. Category Theory (2nd ed.). Oxford University Press, Inc., New York, NY, USA.","edition":"2"},{"key":"e_1_3_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-03359-9_6"},{"key":"e_1_3_2_2_5_1","doi-asserted-by":"publisher","DOI":"10.1017\/S095679681300018X"},{"key":"e_1_3_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-44802-0_2"},{"key":"e_1_3_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500365.2500613"},{"key":"e_1_3_2_2_8_1","doi-asserted-by":"publisher","unstructured":"Conal Elliott. 2018. The simple essence of automatic diferentiation. PACMPL 2 ICFP ( 2018 ) 70 : 1-70 : 29. htps:\/\/doi.org\/10.1145\/3236765","DOI":"10.1145\/3236765"},{"key":"e_1_3_2_2_9_1","first-page":"285","volume-title":"Cache-Oblivious Algorithms. In 40th Annual Symposium on Foundations of Computer Science, FOCS ' 99","author":"Frigo Matteo","year":"1999","unstructured":"Matteo Frigo, Charles E. Leiserson, Harald Prokop, and Sridhar Ramachandran. 1999. Cache-Oblivious Algorithms. In 40th Annual Symposium on Foundations of Computer Science, FOCS ' 99, 17-18 October, 1999, New York, NY, USA. IEEE Computer Society, 285-298. htps:\/\/doi.org\/10.1109\/ SFFCS. 1999.814600"},{"key":"e_1_3_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/227699.227700"},{"key":"e_1_3_2_2_11_1","doi-asserted-by":"crossref","unstructured":"Ralf Hinze. 2013. Adjoint folds and unfolds-An extended study. Science of Computer Programming 78 11 ( 2013 ) 2108-2159.","DOI":"10.1016\/j.scico.2012.07.011"},{"key":"e_1_3_2_2_12_1","first-page":"203","volume-title":"Haskell workshop","volume":"1","author":"Jones Simon Peyton","year":"2001","unstructured":"Simon Peyton Jones, Andrew Tolmach, and Tony Hoare. 2001. Playing by the rules: rewriting as a practical optimisation technique in GHC. In Haskell workshop, Vol. 1. ACM, 203-233."},{"key":"e_1_3_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1232743.1232745"},{"key":"e_1_3_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico"},{"volume-title":"Categories for the Working Mathematician","author":"MacLane Saunders","key":"e_1_3_2_2_15_1","unstructured":"Saunders MacLane. 1971. Categories for the Working Mathematician. Springer-Verlag."},{"key":"e_1_3_2_2_16_1","unstructured":"Bartosz Milewski. 2018. Category theory for programmers. Textbook available on-line: htp:\/\/tiny.cc\/5letkz."},{"key":"e_1_3_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/3122955.3122956"},{"key":"e_1_3_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/3341694"},{"key":"e_1_3_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00165-012-0240-9"},{"key":"e_1_3_2_2_20_1","unstructured":"Jos\u00e9 N. Oliveira. 2018. Compiling quantamorphisms for the IBM QExperience. Talk at the IFIP WG 2.1 #77 Meeting Brandenburg (Germany). Joint work with A. Neri and R.S. Barbosa."},{"key":"e_1_3_2_2_21_1","doi-asserted-by":"crossref","unstructured":"Simon Peyton Jones Dimitrios Vytiniotis Stephanie Weirich and Geofrey Washburn. 2006. Simple unification-based type inference for GADTs. ACM SIGPLAN Notices 41 9 ( 2006 ) 50-61.","DOI":"10.1145\/1160074.1159811"},{"key":"e_1_3_2_2_22_1","doi-asserted-by":"crossref","unstructured":"Hanan Samet. 1984. The quadtree and related hierarchical data structures. ACM Computing Surveys (CSUR) 16 2 ( 1984 ) 187-260.","DOI":"10.1145\/356924.356930"},{"key":"e_1_3_2_2_23_1","unstructured":"Armando Santos. 2020. Selective Functors & Probabilistic Programming. htps:\/\/github.com\/bolt12\/master-thesis. (In progress)."},{"key":"e_1_3_2_2_24_1","volume-title":"Google Cloud Big Data and Machine Learning Blog. Access date","author":"Sato Kaz","year":"2020","unstructured":"Kaz Sato, Clif Young, and David Patterson. 2017. An in-depth look at Google's first Tensor Processing Unit (TPU). In Google Cloud Big Data and Machine Learning Blog. Access date: July 15, 2020."},{"key":"e_1_3_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.4230\/LIPIcs.ECOOP"},{"key":"e_1_3_2_2_26_1","volume-title":"Simon Peyton Jones, and Richard A Eisenberg","author":"Stolarek Jan","year":"2015","unstructured":"Jan Stolarek, Simon Peyton Jones, and Richard A Eisenberg. 2015. Injective type families for Haskell. ACM SIGPLAN Notices 50, 12 ( 2015 ), 118-128."},{"key":"e_1_3_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC"},{"key":"e_1_3_2_2_28_1","unstructured":"Wikipedia. 2020. Bayesian network. htps:\/\/en.wikipedia.org\/wiki\/ Bayesian_network (Accessed: 2020-02-16)."}],"event":{"name":"ICFP '20: ACM SIGPLAN International Conference on Functional Programming","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"],"location":"Virtual Event USA","acronym":"ICFP '20"},"container-title":["Proceedings of the 13th ACM SIGPLAN International Symposium on Haskell"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3406088.3409019","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3406088.3409019","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T21:31:52Z","timestamp":1750195912000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3406088.3409019"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,8,9]]},"references-count":28,"alternative-id":["10.1145\/3406088.3409019","10.1145\/3406088"],"URL":"https:\/\/doi.org\/10.1145\/3406088.3409019","relation":{},"subject":[],"published":{"date-parts":[[2020,8,9]]},"assertion":[{"value":"2020-08-09","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}