{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,5]],"date-time":"2026-05-05T18:26:57Z","timestamp":1778005617562,"version":"3.51.4"},"reference-count":19,"publisher":"Pleiades Publishing Ltd","issue":"1","license":[{"start":{"date-parts":[[2024,2,1]],"date-time":"2024-02-01T00:00:00Z","timestamp":1706745600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2024,2,1]],"date-time":"2024-02-01T00:00:00Z","timestamp":1706745600000},"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":["Program Comput Soft"],"published-print":{"date-parts":[[2024,2]]},"DOI":"10.1134\/s0361768824010055","type":"journal-article","created":{"date-parts":[[2024,5,22]],"date-time":"2024-05-22T05:01:42Z","timestamp":1716354102000},"page":"11-23","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["The Use of Functional Programming Library for Parallel Computing on CUDA"],"prefix":"10.1134","volume":"50","author":[{"given":"M. M.","family":"Krasnov","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"O. B.","family":"Feodoritova","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"137","published-online":{"date-parts":[[2024,5,22]]},"reference":[{"key":"3818_CR1","unstructured":"TOP 500. URL: https:\/\/www.top500.org"},{"key":"3818_CR2","unstructured":"NVIDIA. URL: https:\/\/www.nvidia.com"},{"key":"3818_CR3","unstructured":"TOP 50. URL: http:\/\/top50.supercomputers.ru"},{"key":"3818_CR4","unstructured":"OpenCL. URL: https:\/\/www.khronos.org\/opencl\/"},{"key":"3818_CR5","unstructured":"OpenACC. URL: https:\/\/www.openacc.org"},{"key":"3818_CR6","unstructured":"CUDA Zone. URL: https:\/\/developer.nvidia.com\/cuda-zone"},{"key":"3818_CR7","doi-asserted-by":"publisher","unstructured":"Krasnov, M.M., Functional Programming Library for C++, Programming and Computer Software, 2020, vol.\u00a046, pp. 330\u2013340.\nhttps:\/\/doi.org\/10.1134\/S0361768820050047","DOI":"10.1134\/S0361768820050047"},{"key":"3818_CR8","unstructured":"Krasnov, M.M., Operator library for solving multidimensional mathematical physics problems on CUDA, Matematicheskoe modelirovanie, 2015, vol. 27, no. 3, pp.\u00a0109\u2013120. \nhttp:\/\/www.mathnet.ru\/links\/38633e7a627ab2ce1527ae4a092be72f\/mm3585.pdf"},{"key":"3818_CR9","unstructured":"Krasnov, M.M., Grid Operator Approach to Mathematical Physics Problems, Extended Abstract of Cand. Sci. Dissertation. http:\/\/keldysh.ru\/council\/1\/2017-krasnov\/avtoref.pdf"},{"key":"3818_CR10","unstructured":"Haskell language. URL: www.haskell.org\/"},{"key":"3818_CR11","volume-title":"Categories for the Working Mathematician","author":"S. MacLane","year":"1971","unstructured":"MacLane, S., Categories for the Working Mathematician, New York: Springer, 1971."},{"key":"3818_CR12","unstructured":"Milewski, B., Category Theory for Programmers. URL: https:\/\/github.com\/hmemcpy\/milewski-ctfp-pdf\/releases\/download\/v1.3.0\/category-theory-for-programmers.pdf"},{"key":"3818_CR13","first-page":"26","volume":"7","author":"T. Veldhuizen","year":"1995","unstructured":"Veldhuizen, T., Expression templates, C++ Report, 1995, vol. 7, no. 5, pp. 26\u201331.","journal-title":"C++ Report"},{"key":"3818_CR14","first-page":"24","volume":"7","author":"J.O. Coplien","year":"1995","unstructured":"Coplien, J.O., Curiously recurring template patterns, C++ Report, 1995, vol. 7, no. 2, pp. 24\u201327.","journal-title":"C++ Report"},{"key":"3818_CR15","volume-title":"C++ Template Metaprogramming","author":"D. Abrahams","year":"2004","unstructured":"Abrahams, D. and Gurtovoy, A., C++ Template Metaprogramming, Addison-Wesley, 2004. ISBN 978-0-321-22725-6."},{"key":"3818_CR16","doi-asserted-by":"publisher","unstructured":"Krasnov, M.M., Metaprogramming of C++ Templates in Mathematical Physics Problems, Moscow: IPM im. M.V. Keldysha, 2017. https:\/\/doi.org\/10.20948\/mono-2017-krasnov10.20948\/mono-2017-krasnov","DOI":"10.20948\/mono-2017-krasnov10.20948\/mono-2017-krasnov"},{"key":"3818_CR17","doi-asserted-by":"publisher","unstructured":"Krasnov, M.M., Application of Symbolic Differentiation for Solving Computational Problems, Preprint of Keldysh Institute of Applided Mathematics, RAS, 2017, no. 4. https:\/\/doi.org\/10.20948\/prepr-2017-410.20948\/prepr-2017-4","DOI":"10.20948\/prepr-2017-410.20948\/prepr-2017-4"},{"key":"3818_CR18","doi-asserted-by":"publisher","unstructured":"Krasnov, M.M., Application of Functional Programming for Solving Numerical Problems, Preprint of Keldysh Institute of Applided Mathematics, RAS, 2019, no. 114. https:\/\/doi.org\/10.20948\/prepr-2019-11410.20948\/prepr-2019-114","DOI":"10.20948\/prepr-2019-11410.20948\/prepr-2019-114"},{"key":"3818_CR19","unstructured":"Computing complex K-60. URL: \nhttps:\/\/www.kiam.ru\/MVS\/resourses\/k60.html"}],"container-title":["Programming and Computer Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1134\/S0361768824010055.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1134\/S0361768824010055","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1134\/S0361768824010055.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,1]],"date-time":"2026-04-01T03:03:58Z","timestamp":1775012638000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1134\/S0361768824010055"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,2]]},"references-count":19,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2024,2]]}},"alternative-id":["3818"],"URL":"https:\/\/doi.org\/10.1134\/s0361768824010055","relation":{},"ISSN":["0361-7688","1608-3261"],"issn-type":[{"value":"0361-7688","type":"print"},{"value":"1608-3261","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,2]]},"assertion":[{"value":"15 February 2023","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"28 February 2023","order":2,"name":"revised","label":"Revised","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"10 April 2023","order":3,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"22 May 2024","order":4,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"The authors of this work declare that they have no conflicts of interest.","order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"CONFLICT OF INTEREST"}}]}}