{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,30]],"date-time":"2025-10-30T05:09:33Z","timestamp":1761800973248,"version":"build-2065373602"},"reference-count":21,"publisher":"Elsevier BV","license":[{"start":{"date-parts":[[2015,7,1]],"date-time":"2015-07-01T00:00:00Z","timestamp":1435708800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2015,7,1]],"date-time":"2015-07-01T00:00:00Z","timestamp":1435708800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/legal\/tdmrep-license"},{"start":{"date-parts":[[2015,5,20]],"date-time":"2015-05-20T00:00:00Z","timestamp":1432080000000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"publisher","award":["EP\/K011715\/1"],"award-info":[{"award-number":["EP\/K011715\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/100006785","name":"Google","doi-asserted-by":"publisher","id":[{"id":"10.13039\/100006785","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["elsevier.com","sciencedirect.com"],"crossmark-restriction":true},"short-container-title":["Journal of Computational Science"],"published-print":{"date-parts":[[2015,7]]},"DOI":"10.1016\/j.jocs.2015.04.018","type":"journal-article","created":{"date-parts":[[2015,4,18]],"date-time":"2015-04-18T17:47:11Z","timestamp":1429379231000},"page":"156-162","update-policy":"https:\/\/doi.org\/10.1016\/elsevier_cm_policy","source":"Crossref","is-referenced-by-count":4,"special_numbering":"C","title":["Evolving Fortran types with inferred units-of-measure"],"prefix":"10.1016","volume":"9","author":[{"given":"Dominic","family":"Orchard","sequence":"first","affiliation":[]},{"given":"Andrew","family":"Rice","sequence":"additional","affiliation":[]},{"given":"Oleg","family":"Oshmyan","sequence":"additional","affiliation":[]}],"member":"78","reference":[{"key":"10.1016\/j.jocs.2015.04.018_bib0005","first-page":"140","volume":"vol. 139","author":"Allen","year":"2005"},{"volume":"vol. 2","year":"1993","author":"Barendregt","key":"10.1016\/j.jocs.2015.04.018_bib0010"},{"year":"2005","series-title":"Annotation-Less Unit Type Inference for C. Final Project, 6. 883: Program Analysis","author":"Guo","key":"10.1016\/j.jocs.2015.04.018_bib0015"},{"key":"10.1016\/j.jocs.2015.04.018_bib0020","series-title":"Draft Proceedings of the 12th International Symposium on Trends in Functional Programming (TFP\u201911)","first-page":"17","article-title":"Type inference for units of measure","author":"Gundry","year":"2011"},{"year":"2013","series-title":"Type Inference, Haskell and Dependent Types","author":"Gundry","key":"10.1016\/j.jocs.2015.04.018_bib0025"},{"key":"10.1016\/j.jocs.2015.04.018_bib0030","series-title":"Proceedings of the 2015 ACM SIGPLAN symposium on Haskell","article-title":"A Typechecker Plugin for Units of Measure","author":"Gundry","year":"2015"},{"key":"10.1016\/j.jocs.2015.04.018_bib0035","unstructured":"ISO\/IEC JTC1\/SC22\/WG5, Units of measure for numerical quantities, April 2013. N1696, ftp:\/\/ftp.nag.co.uk\/sc22wg5\/N1951-N2000\/N1969.pdf."},{"key":"10.1016\/j.jocs.2015.04.018_bib0040","unstructured":"ISO\/IEC JTC1\/SC22\/WG5 N1970, Units of Measure in Fortran, 2013. N1970, ftp:\/\/ftp.nag.co.uk\/sc22wg5\/N1951-N2000\/N1970.pdf."},{"key":"10.1016\/j.jocs.2015.04.018_bib0045","series-title":"Proceedings of ICSE","first-page":"262","article-title":"Osprey: a practical type system for validating dimensional unit correctness of C programs","author":"Jiang","year":"2006"},{"key":"10.1016\/j.jocs.2015.04.018_bib0050","series-title":"European Symposium on Programming Languages and Systems (ESOP)","first-page":"348","article-title":"Dimension types","author":"Kennedy","year":"1994"},{"year":"1996","series-title":"Programming Languages and Dimensions. Number 391.","author":"Kennedy","key":"10.1016\/j.jocs.2015.04.018_bib0055"},{"key":"10.1016\/j.jocs.2015.04.018_bib0060","series-title":"Types for Units-of-Measure: Theory and Practice. In Central European Functional Programming School","first-page":"268","author":"Kennedy","year":"2010"},{"key":"10.1016\/j.jocs.2015.04.018_bib0065","series-title":"Proceedings of the 2014 ACM SIGPLAN symposium on Haskell","first-page":"31","article-title":"Experience report: type-checking polymorphic units for astrophysics research in haskell","author":"Muranushi","year":"2014"},{"key":"10.1016\/j.jocs.2015.04.018_bib0070","series-title":"Proceedings of 6th Workshop on Refactoring Tools, WRT 2013","article-title":"Upgrading Fortran source code using automatic refactoring","author":"Orchard","year":"2013"},{"issue":"0","key":"10.1016\/j.jocs.2015.04.018_bib0075","doi-asserted-by":"crossref","first-page":"713","DOI":"10.1016\/j.procs.2014.05.064","article-title":"A computational science agenda for programming language research","volume":"29","author":"Orchard","year":"2014","journal-title":"Procedia Comput. Sci."},{"year":"2006","series-title":"An Introduction to Computational Physics","author":"Pang","key":"10.1016\/j.jocs.2015.04.018_bib0080"},{"issue":"11","key":"10.1016\/j.jocs.2015.04.018_bib0085","doi-asserted-by":"crossref","first-page":"1067","DOI":"10.1002\/spe.401","article-title":"Automated computation and consistency checking of physical dimensions and units in scientific programs","volume":"31","author":"Petty","year":"2001","journal-title":"Softw. Pract. Exp."},{"year":"2002","series-title":"Types and Programming Languages","author":"Pierce","key":"10.1016\/j.jocs.2015.04.018_bib0090"},{"key":"10.1016\/j.jocs.2015.04.018_bib0095","first-page":"9","article-title":"SimCheck: an expressive type system for Simulink","volume":"14","author":"Roy","year":"2010","journal-title":"NASA Formal Methods"},{"key":"10.1016\/j.jocs.2015.04.018_bib0100","series-title":"Mars Climate Orbiter Mishap Investigation Board Phase I Report","first-page":"44","author":"Stephenson","year":"1999"},{"key":"10.1016\/j.jocs.2015.04.018_bib0105","series-title":"Proceedings of the 1st Workshop on Programming Language Evolution","first-page":"1","article-title":"Programming language evolution workshop report.","author":"Urma","year":"2014"}],"container-title":["Journal of Computational Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S1877750315000563?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S1877750315000563?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2025,10,30]],"date-time":"2025-10-30T05:07:51Z","timestamp":1761800871000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S1877750315000563"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,7]]},"references-count":21,"alternative-id":["S1877750315000563"],"URL":"https:\/\/doi.org\/10.1016\/j.jocs.2015.04.018","relation":{},"ISSN":["1877-7503"],"issn-type":[{"type":"print","value":"1877-7503"}],"subject":[],"published":{"date-parts":[[2015,7]]},"assertion":[{"value":"Elsevier","name":"publisher","label":"This article is maintained by"},{"value":"Evolving Fortran types with inferred units-of-measure","name":"articletitle","label":"Article Title"},{"value":"Journal of Computational Science","name":"journaltitle","label":"Journal Title"},{"value":"https:\/\/doi.org\/10.1016\/j.jocs.2015.04.018","name":"articlelink","label":"CrossRef DOI link to publisher maintained version"},{"value":"article","name":"content_type","label":"Content Type"},{"value":"Copyright \u00a9 2015 The Authors. Published by Elsevier B.V.","name":"copyright","label":"Copyright"}]}}