{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,11]],"date-time":"2026-04-11T02:14:20Z","timestamp":1775873660057,"version":"3.50.1"},"reference-count":53,"publisher":"Association for Computing Machinery (ACM)","issue":"POPL","license":[{"start":{"date-parts":[[2019,1,2]],"date-time":"2019-01-02T00:00:00Z","timestamp":1546387200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/501100002241","name":"Japan Science and Technology Agency","doi-asserted-by":"publisher","award":["JPMJER1603"],"award-info":[{"award-number":["JPMJER1603"]}],"id":[{"id":"10.13039\/501100002241","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001691","name":"Japan Society for the Promotion of Science","doi-asserted-by":"publisher","award":["JP17H01723"],"award-info":[{"award-number":["JP17H01723"]}],"id":[{"id":"10.13039\/501100001691","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2019,1,2]]},"abstract":"<jats:p>Garcia and Cimini study a type inference problem for the ITGL, an implicitly and gradually typed language with let-polymorphism, and develop a sound and complete inference algorithm for it. Soundness and completeness mean that, if the algorithm succeeds, the input term can be translated to a well-typed term of an explicitly typed blame calculus by cast insertion and vice versa. However, in general, there are many possible translations depending on how type variables that were left undecided by static type inference are instantiated with concrete static types. Worse, the translated terms may behave differently\u2014some evaluate to values but others raise blame.<\/jats:p>\n          <jats:p>\n            In this paper, we propose and formalize a new blame calculus \u03bb\n            <jats:sub>B<\/jats:sub>\n            <jats:sup>DTI<\/jats:sup>\n            that avoids such divergence as an intermediate language for the ITGL. A main idea is to allow a term to contain type variables (that have not been instantiated during static type inference) and defer instantiation of these type variables to run time. We introduce\n            <jats:italic>dynamic type inference<\/jats:italic>\n            (DTI) into the semantics of \u03bb\n            <jats:sub>B<\/jats:sub>\n            <jats:sup>DTI<\/jats:sup>\n            so that type variables are instantiated along reduction. The DTI-based semantics not only avoids the divergence described above but also is\n            <jats:italic>sound and complete<\/jats:italic>\n            with respect to the semantics of fully instantiated terms in the following sense: if the evaluation of a term succeeds (i.e., terminates with a value) in the DTI-based semantics, then there is a fully instantiated version of the term that also succeeds in the explicitly typed blame calculus and vice versa.\n          <\/jats:p>\n          <jats:p>Finally, we prove the gradual guarantee, which is an important correctness criterion of a gradually typed language, for the ITGL.<\/jats:p>","DOI":"10.1145\/3290331","type":"journal-article","created":{"date-parts":[[2019,1,4]],"date-time":"2019-01-04T13:33:51Z","timestamp":1546608831000},"page":"1-29","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":14,"title":["Dynamic type inference for gradual Hindley\u2013Milner typing"],"prefix":"10.1145","volume":"3","author":[{"given":"Yusuke","family":"Miyazaki","sequence":"first","affiliation":[{"name":"Kyoto University, Japan"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Taro","family":"Sekiyama","sequence":"additional","affiliation":[{"name":"National Institute of Informatics, Japan"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Atsushi","family":"Igarashi","sequence":"additional","affiliation":[{"name":"Kyoto University, Japan"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2019,1,2]]},"reference":[{"key":"e_1_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/103135.103138"},{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1926385.1926409"},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/3110283"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2628136.2628149"},{"key":"e_1_2_2_5_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796816000162"},{"key":"e_1_2_2_6_1","volume-title":"Proc. of ACM PEPM. 4\u201312","author":"Bawden Alan","year":"1999"},{"key":"e_1_2_2_7_1","volume-title":"Proceedings of the ACM SIGPLAN Workshop on ML and its Applications. 120\u2013126","author":"Bj\u00f8rner Nikolaj Skallerud","year":"1994"},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/165854.165893"},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1016\/0890-5401(91)90055-7"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/113445.113469"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2837614.2837632"},{"key":"e_1_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/3009837.3009863"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.5555\/788018.788825"},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/382780.382785"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/581478.581484"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/316686.316703"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2676726.2676992"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/2837614.2837670"},{"key":"e_1_2_2_19_1","volume-title":"Proc. of FLOPS (LNCS)","author":"Garrigue Jacques"},{"key":"e_1_2_2_20_1","volume-title":"Universit\u00e9 Paris VII. Summary in Proc. of the Second Scandinavian Logic Symposium","author":"Girard Jean-Yves","year":"1972"},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/169701.169696"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1016\/0167-6423(94)00004-2"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/224164.224203"},{"key":"e_1_2_2_24_1","volume-title":"Proc. of TFP (Trends in Functional Programming)","volume":"8","author":"Herman David","year":"2007"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10990-011-9066-z"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/3110284"},{"key":"e_1_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2048066.2048114"},{"key":"e_1_2_2_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/1111037.1111060"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/158511.158632"},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1016\/0022-0000(78)90014-4"},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/237721.237729"},{"key":"e_1_2_2_32_1","volume-title":"Mathematical Logic (revised edition ed.)","author":"Orman Quine Willard Van"},{"key":"e_1_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2103656.2103714"},{"key":"e_1_2_2_34_1","volume-title":"Proc. Colloque sur la Programmation (LNCS)","author":"Reynolds John"},{"key":"e_1_2_2_35_1","volume-title":"Abstraction and Parametric Polymorphism. In IFIP Congress. 513\u2013523","author":"Reynolds John C.","year":"1983"},{"key":"e_1_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-28869-2_29"},{"key":"e_1_2_2_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/268946.268970"},{"key":"e_1_2_2_38_1","volume-title":"Proc. of Workshop on Scheme and Functional Programming. 81\u201392","author":"Jeremy"},{"key":"e_1_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-73589-2_2"},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1408681.1408688"},{"key":"e_1_2_2_41_1","volume-title":"SNAPL (LIPIcs)","volume":"32","author":"Siek Jeremy G.","year":"2015"},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-662-46669-8_18"},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/1706299.1706342"},{"key":"e_1_2_2_44_1","volume-title":"Common LISP: the language","author":"Steele Guy L.","year":"2063","edition":"2"},{"key":"e_1_2_2_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/604131.604134"},{"key":"e_1_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0304-3975(00)00053-0"},{"key":"e_1_2_2_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/96709.96747"},{"key":"e_1_2_2_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/1328438.1328486"},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.2168\/LMCS-6(4:8)2010"},{"key":"e_1_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-00590-9_1"},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01018828"},{"key":"e_1_2_2_52_1","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1994.1093"},{"key":"e_1_2_2_53_1","volume-title":"ESOP 2018, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018, Thessaloniki, Greece, April 14-20, 2018, Proceedings. 3\u201330","author":"Xie Ningning"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3290331","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3290331","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3290331","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T00:58:04Z","timestamp":1750208284000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3290331"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,1,2]]},"references-count":53,"journal-issue":{"issue":"POPL","published-print":{"date-parts":[[2019,1,2]]}},"alternative-id":["10.1145\/3290331"],"URL":"https:\/\/doi.org\/10.1145\/3290331","relation":{},"ISSN":["2475-1421"],"issn-type":[{"value":"2475-1421","type":"electronic"}],"subject":[],"published":{"date-parts":[[2019,1,2]]},"assertion":[{"value":"2019-01-02","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}