{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,27]],"date-time":"2025-06-27T15:40:10Z","timestamp":1751038810894,"version":"3.41.0"},"reference-count":39,"publisher":"Association for Computing Machinery (ACM)","issue":"7","content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Commun. ACM"],"published-print":{"date-parts":[[2025,7]]},"abstract":"<jats:p>The rational-programmer method is the first reasonably general approach for assessing whether linguistic features and tools can deliver helpful information with software development tasks.<\/jats:p>","DOI":"10.1145\/3708981","type":"journal-article","created":{"date-parts":[[2025,6,11]],"date-time":"2025-06-11T14:33:33Z","timestamp":1749652413000},"page":"120-130","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["The Rational Programmer: Investigating Programming Language Pragmatics"],"prefix":"10.1145","volume":"68","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-9338-7034","authenticated-orcid":false,"given":"Christos","family":"Dimoulas","sequence":"first","affiliation":[{"name":"Northwestern University, Department of Computer Science, Evanston, Illinois, United States"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6678-1004","authenticated-orcid":false,"given":"Matthias","family":"Felleisen","sequence":"additional","affiliation":[{"name":"Northeastern University, College of Computer Sciences, Boston, Massachusetts, United States"}]}],"member":"320","published-online":{"date-parts":[[2025,6,27]]},"reference":[{"key":"e_1_3_1_2_2","doi-asserted-by":"publisher","DOI":"10.1145\/2884781.2884864"},{"key":"e_1_3_1_3_2","doi-asserted-by":"publisher","DOI":"10.1145\/3275519"},{"key":"e_1_3_1_4_2","doi-asserted-by":"publisher","DOI":"10.1145\/165854.165893"},{"key":"e_1_3_1_5_2","doi-asserted-by":"publisher","DOI":"10.1145\/3475738.3480941"},{"key":"e_1_3_1_6_2","doi-asserted-by":"publisher","DOI":"10.1109\/C-M.1978.218136"},{"key":"e_1_3_1_7_2","volume-title":"ECMA-262: ECMAScript Language Specification","author":"ECMA International","year":"2025","unstructured":"ECMA International. ECMA-262: ECMAScript Language Specification (16th ed.). European Association for Standardizing Information and Communication Systems\u00a0(2025); https:\/\/tc39.es\/ecma262\/."},{"key":"e_1_3_1_8_2","doi-asserted-by":"crossref","unstructured":"Feldthaus A. and M\u00f8ller A. Checking correctness of TypeScript interfaces for JavaScript libraries. In Proceedings of the ACM SIGPLAN Conf. on Object-Oriented Programming Systems Languages and Applications. (2014) 1\u201316.","DOI":"10.1145\/2660193.2660215"},{"key":"e_1_3_1_9_2","doi-asserted-by":"publisher","DOI":"10.1016\/0167-6423(91)90036-W"},{"key":"e_1_3_1_10_2","doi-asserted-by":"publisher","DOI":"10.1145\/581478.581484"},{"key":"e_1_3_1_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/3519939.3523430"},{"key":"e_1_3_1_12_2","doi-asserted-by":"publisher","DOI":"10.1145\/3589806.3600034"},{"key":"e_1_3_1_13_2","doi-asserted-by":"publisher","DOI":"10.1145\/3360548"},{"key":"e_1_3_1_14_2","doi-asserted-by":"publisher","DOI":"10.1145\/3175493.3162066"},{"key":"e_1_3_1_15_2","doi-asserted-by":"crossref","unstructured":"Hejduk N. Greenman B. Felleisen M. and Dimoulas C. How profilers can help navigate type migration. (2024). unpublished manuscript; submitted for review.","DOI":"10.1145\/3622817"},{"key":"e_1_3_1_16_2","doi-asserted-by":"publisher","DOI":"10.1145\/3563305"},{"key":"e_1_3_1_17_2","doi-asserted-by":"publisher","DOI":"10.1145\/3133914"},{"key":"e_1_3_1_18_2","doi-asserted-by":"publisher","DOI":"10.1109\/VLHCC.2006.43"},{"key":"e_1_3_1_19_2","volume-title":"An Investigation of the Pragmatics of Debugging With Contracts and Gradual Types","author":"Lazarek L.","year":"2024","unstructured":"Lazarek, L. An Investigation of the Pragmatics of Debugging With Contracts and Gradual Types. Ph.D. Dissertation. Northwestern University, 2024."},{"key":"e_1_3_1_20_2","doi-asserted-by":"publisher","DOI":"10.1145\/3473573"},{"key":"e_1_3_1_21_2","doi-asserted-by":"publisher","DOI":"10.1145\/3607836"},{"key":"e_1_3_1_22_2","doi-asserted-by":"publisher","DOI":"10.1145\/3371133"},{"key":"e_1_3_1_23_2","doi-asserted-by":"publisher","DOI":"10.1145\/3180155.3180242"},{"key":"e_1_3_1_24_2","doi-asserted-by":"publisher","DOI":"10.1145\/1953163.1953308"},{"key":"e_1_3_1_25_2","first-page":"1","volume-title":"Advances in Object-Oriented Software Engineering","author":"Meyer B.","year":"1991","unstructured":"Meyer, B. Design by contract.\u00a0Advances in Object-Oriented Software Engineering. Prentice Hall, Upper Saddle River, NJ, USA, (1991), 1\u201350."},{"key":"e_1_3_1_26_2","unstructured":"Microsoft Corporation. TypeScript: JavaScript with Syntax for Types. 2025; https:\/\/tinyurl.com\/pcmuvnc."},{"key":"e_1_3_1_27_2","volume-title":"Essays on Some Unsettled Questions of Political Economy","author":"Mill J.S.","year":"1874","unstructured":"Mill, J.S. Essays on Some Unsettled Questions of Political Economy. Longmans, Green, Reader, and Dyer, London, U.K.\u00a0(1874)."},{"key":"e_1_3_1_28_2","doi-asserted-by":"publisher","DOI":"10.1016\/0022-0000(78)90014-4"},{"key":"e_1_3_1_29_2","volume-title":"Lambda-Calculus Models of Programming Languages","author":"Morris J.H.","year":"1968","unstructured":"Morris, J.H. Lambda-Calculus Models of Programming Languages. Ph.D. dissertation. Massachusetts Institute of Technology\u00a0(1968)."},{"key":"e_1_3_1_30_2","doi-asserted-by":"publisher","DOI":"10.1145\/1508244.1508275"},{"key":"e_1_3_1_31_2","first-page":"81","volume-title":"Workshop on Scheme and Functional Programming","author":"Siek J.G.","year":"2006","unstructured":"Siek, J.G. and Taha, W. Gradual typing for functional languages. In Workshop on Scheme and Functional Programming. University of Chicago\u00a0(2006), 81\u201392. TR-2006-06."},{"key":"e_1_3_1_32_2","volume-title":"Administrative Behavior","author":"Simon H.A.","year":"1947","unstructured":"Simon, H.A. Administrative Behavior. MacMillan Publishers, New York, NY\u00a0(1947)."},{"key":"e_1_3_1_33_2","doi-asserted-by":"publisher","DOI":"10.5555\/1098646"},{"key":"e_1_3_1_34_2","doi-asserted-by":"publisher","DOI":"10.1145\/2837614.2837630"},{"key":"e_1_3_1_35_2","doi-asserted-by":"publisher","DOI":"10.1145\/2384616.2384674"},{"key":"e_1_3_1_36_2","doi-asserted-by":"publisher","DOI":"10.1145\/1176617.1176755"},{"key":"e_1_3_1_37_2","doi-asserted-by":"publisher","DOI":"10.1145\/1328438.1328486"},{"key":"e_1_3_1_38_2","doi-asserted-by":"publisher","DOI":"10.1145\/1863543.1863561"},{"key":"e_1_3_1_39_2","doi-asserted-by":"publisher","DOI":"10.1007\/BF00122574"},{"key":"e_1_3_1_40_2","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1994.1093"}],"container-title":["Communications of the ACM"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3708981","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,27]],"date-time":"2025-06-27T15:07:33Z","timestamp":1751036853000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3708981"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,6,27]]},"references-count":39,"journal-issue":{"issue":"7","published-print":{"date-parts":[[2025,7]]}},"alternative-id":["10.1145\/3708981"],"URL":"https:\/\/doi.org\/10.1145\/3708981","relation":{},"ISSN":["0001-0782","1557-7317"],"issn-type":[{"type":"print","value":"0001-0782"},{"type":"electronic","value":"1557-7317"}],"subject":[],"published":{"date-parts":[[2025,6,27]]},"assertion":[{"value":"2024-07-22","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2025-06-27","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}