{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:27:16Z","timestamp":1750220836025,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":23,"publisher":"ACM","license":[{"start":{"date-parts":[[2019,8,18]],"date-time":"2019-08-18T00:00:00Z","timestamp":1566086400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2019,8,18]]},"DOI":"10.1145\/3331553.3342616","type":"proceedings-article","created":{"date-parts":[[2019,7,29]],"date-time":"2019-07-29T20:51:45Z","timestamp":1564433505000},"page":"34-46","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["Safety at speed: in-place array algorithms from pure functional programs by safely re-using storage"],"prefix":"10.1145","author":[{"given":"Markus","family":"Aronsson","sequence":"first","affiliation":[{"name":"Chalmers University of Technology, Sweden"}]},{"given":"Koen","family":"Claessen","sequence":"additional","affiliation":[{"name":"Chalmers University of Technology, Sweden"}]},{"given":"Mary","family":"Sheeran","sequence":"additional","affiliation":[{"name":"Chalmers University of Technology, Sweden"}]},{"given":"Nicholas","family":"Smallbone","sequence":"additional","affiliation":[{"name":"Chalmers University of Technology, Sweden"}]}],"member":"320","published-online":{"date-parts":[[2019,8,18]]},"reference":[{"key":"e_1_3_2_1_1_1","first-page":"37","article-title":"The Operational monad tutorial","volume":"15","author":"Apfelmus Heinrich","year":"2010","unstructured":"Heinrich Apfelmus . 2010 . The Operational monad tutorial . The Monad. Reader 15 (2010), 37 - 55 . Heinrich Apfelmus. 2010. The Operational monad tutorial. The Monad. Reader 15 (2010), 37-55.","journal-title":"The Monad. Reader"},{"key":"e_1_3_2_1_2_1","first-page":"162","volume-title":"Haskell Symposium","volume":"52","author":"Aronsson Markus","year":"2017","unstructured":"Markus Aronsson and Mary Sheeran . 2017 . Hardware software codesign in Haskell . In Haskell Symposium , Vol. 52 . ACM, 162 - 173 . Markus Aronsson and Mary Sheeran. 2017. Hardware software codesign in Haskell. In Haskell Symposium, Vol. 52. ACM, 162-173."},{"key":"e_1_3_2_1_3_1","unstructured":"Emil Axelsson. 2016. Benchmarking FFT in Feldspar. http:\/\/fun-discoveries.blogspot.com\/2016\/11\/benchmarking-fft-in-feldspar.html  Emil Axelsson. 2016. Benchmarking FFT in Feldspar. http:\/\/fun-discoveries.blogspot.com\/2016\/11\/benchmarking-fft-in-feldspar.html"},{"key":"e_1_3_2_1_4_1","unstructured":"Emil Axelsson. 2016. Compilation as a Typed EDSL-to-EDSL Transformation. http:\/\/fun-discoveries.blogspot.se\/2016\/03\/.  Emil Axelsson. 2016. Compilation as a Typed EDSL-to-EDSL Transformation. http:\/\/fun-discoveries.blogspot.se\/2016\/03\/."},{"key":"e_1_3_2_1_5_1","unstructured":"Emil Axelsson. 2019. A version of Operational suitable for extensible EDSLs. http:\/\/hackage.haskell.org\/package\/operational-alacarte.  Emil Axelsson. 2019. A version of Operational suitable for extensible EDSLs. http:\/\/hackage.haskell.org\/package\/operational-alacarte."},{"key":"e_1_3_2_1_6_1","volume-title":"Symposium on Implementation and Application of Functional Languages. Springer, 121-136","author":"Axelsson Emil","year":"2010","unstructured":"Emil Axelsson , Koen Claessen , Mary Sheeran , Josef Svenningsson , David Engdal , and Anders Persson . 2010 . The design and implementation of Feldspar . In Symposium on Implementation and Application of Functional Languages. Springer, 121-136 . Emil Axelsson, Koen Claessen, Mary Sheeran, Josef Svenningsson, David Engdal, and Anders Persson. 2010. The design and implementation of Feldspar. In Symposium on Implementation and Application of Functional Languages. Springer, 121-136."},{"key":"e_1_3_2_1_7_1","volume-title":"Feldspar: Application and implementation. In Central European Functional Programming School","author":"Axelsson Emil","year":"2011","unstructured":"Emil Axelsson and Mary Sheeran . 2011 . Feldspar: Application and implementation. In Central European Functional Programming School . Springer , 402-439. Emil Axelsson and Mary Sheeran. 2011. Feldspar: Application and implementation. In Central European Functional Programming School. Springer, 402-439."},{"key":"e_1_3_2_1_8_1","unstructured":"John Gilbert Presslie Barnes. 2003. High integrity software: the Spark approach to safety and security. Pearson Education.   John Gilbert Presslie Barnes. 2003. High integrity software: the Spark approach to safety and security . Pearson Education."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/3158093"},{"issue":"9","key":"e_1_3_2_1_10_1","first-page":"105","article-title":"Semantic subtyping with an SMT solver","volume":"45","author":"Bierman Gavin M","year":"2010","unstructured":"Gavin M Bierman , Andrew D Gordon , Catalin Hritcu , and David Langworthy . 2010 . Semantic subtyping with an SMT solver . Journal of Functional Programming 45 , 9 , 105 - 116 . Gavin M Bierman, Andrew D Gordon, Catalin Hritcu, and David Langworthy. 2010. Semantic subtyping with an SMT solver. Journal of Functional Programming 45, 9, 105-116.","journal-title":"Journal of Functional Programming"},{"key":"e_1_3_2_1_11_1","volume-title":"An algorithm for the machine calculation of complex Fourier series. Mathematics of computation 19, 90","author":"Cooley James W","year":"1965","unstructured":"James W Cooley and John W Tukey . 1965. An algorithm for the machine calculation of complex Fourier series. Mathematics of computation 19, 90 ( 1965 ), 297-301. James W Cooley and John W Tukey. 1965. An algorithm for the machine calculation of complex Fourier series. Mathematics of computation 19, 90 (1965), 297-301."},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.5555\/1792734.1792766"},{"key":"e_1_3_2_1_13_1","volume-title":"Fast Fourier transforms: a tutorial review and a state of the art. Signal processing 19, 4","author":"Duhamel Pierre","year":"1990","unstructured":"Pierre Duhamel and Martin Vetterli . 1990. Fast Fourier transforms: a tutorial review and a state of the art. Signal processing 19, 4 ( 1990 ), 259-299. Pierre Duhamel and Martin Vetterli. 1990. Fast Fourier transforms: a tutorial review and a state of the art. Signal processing 19, 4 (1990), 259-299."},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2804302.2804318"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/503272.503291"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2004.840301"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/3062341.3062354"},{"key":"e_1_3_2_1_18_1","volume-title":"Cyclone: A Safe Dialect of C. In USENIX Annual Technical Conference, General Track. 275-288","author":"Jim Trevor","year":"2002","unstructured":"Trevor Jim , J Gregory Morrisett , Dan Grossman , Michael W Hicks , James Cheney , and Yanling Wang . 2002 . Cyclone: A Safe Dialect of C. In USENIX Annual Technical Conference, General Track. 275-288 . Trevor Jim, J Gregory Morrisett, Dan Grossman, Michael W Hicks, James Cheney, and Yanling Wang. 2002. Cyclone: A Safe Dialect of C. In USENIX Annual Technical Conference, General Track. 275-288."},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2692956.2663188"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1379022.1375602"},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/2034574.2034811"},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796808006758"},{"key":"e_1_3_2_1_23_1","first-page":"347","article-title":"Linear types can change the world","volume":"2","author":"Wadler Philip","year":"1990","unstructured":"Philip Wadler . 1990 . Linear types can change the world . In IFIP TC , Vol. 2. 347 - 359 . Philip Wadler. 1990. Linear types can change the world. In IFIP TC, Vol. 2. 347-359.","journal-title":"IFIP TC"}],"event":{"name":"ICFP '19: ACM SIGPLAN International Conference on Functional Programming","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"],"location":"Berlin Germany","acronym":"ICFP '19"},"container-title":["Proceedings of the 8th ACM SIGPLAN International Workshop on Functional High-Performance and Numerical Computing"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3331553.3342616","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3331553.3342616","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T23:13:39Z","timestamp":1750202019000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3331553.3342616"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,8,18]]},"references-count":23,"alternative-id":["10.1145\/3331553.3342616","10.1145\/3331553"],"URL":"https:\/\/doi.org\/10.1145\/3331553.3342616","relation":{},"subject":[],"published":{"date-parts":[[2019,8,18]]},"assertion":[{"value":"2019-08-18","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}