{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:15:34Z","timestamp":1763468134862},"publisher-location":"Berlin, Heidelberg","reference-count":25,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642397172"},{"type":"electronic","value":"9783642397189"}],"license":[{"start":{"date-parts":[[2013,1,1]],"date-time":"2013-01-01T00:00:00Z","timestamp":1356998400000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2013]]},"DOI":"10.1007\/978-3-642-39718-9_12","type":"book-chapter","created":{"date-parts":[[2013,8,29]],"date-time":"2013-08-29T23:01:54Z","timestamp":1377817314000},"page":"195-212","source":"Crossref","is-referenced-by-count":6,"title":["Preemptive Type Checking in Dynamically Typed Languages"],"prefix":"10.1007","author":[{"given":"Neville","family":"Grech","sequence":"first","affiliation":[]},{"given":"Julian","family":"Rathke","sequence":"additional","affiliation":[]},{"given":"Bernd","family":"Fischer","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"key":"12_CR1","unstructured":"Mars Climate Orbiter Mishap Investigation Board Phase I Report. NASA (1999)"},{"key":"12_CR2","unstructured":"The Computer Language Benchmarks Game, \n                  \n                    http:\/\/shootout.alioth.debian.org\/"},{"issue":"2","key":"12_CR3","doi-asserted-by":"publisher","first-page":"237","DOI":"10.1145\/103135.103138","volume":"13","author":"M. Abadi","year":"1991","unstructured":"Abadi, M., Cardelli, L., Pierce, B., Plotkin, G.: Dynamic typing in a statically typed language. ACM Transactions on Programming Languages and Systems\u00a013(2), 237\u2013268 (1991)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"12_CR4","doi-asserted-by":"crossref","unstructured":"Ancona, D., Ancona, M., Cuni, A., Matsakis, N.: RPython: A step towards reconciling dynamically and statically typed OO languages. In: DLS, pp. 53\u201364 (2007)","DOI":"10.1145\/1297081.1297091"},{"key":"12_CR5","unstructured":"Bracha, G.: Pluggable type systems. Revival of Dynamic Languages (2004)"},{"key":"12_CR6","doi-asserted-by":"crossref","unstructured":"Bracha, G., Griswold, D.: Strongtalk: Typechecking Smalltalk in a production environment. In: OOPSLA, pp. 215\u2013230 (1993)","DOI":"10.1145\/167962.165893"},{"key":"12_CR7","doi-asserted-by":"crossref","unstructured":"Cartwright, R., Fagan, M.: Soft typing. In: PLDI, pp. 278\u2013292 (1991)","DOI":"10.1145\/113446.113469"},{"key":"12_CR8","doi-asserted-by":"crossref","unstructured":"Findler, R., Felleisen, M.: Contracts for higher-order functions. In: ICFP, pp. 48\u201359 (2002)","DOI":"10.1145\/583852.581484"},{"key":"12_CR9","doi-asserted-by":"crossref","unstructured":"Flanagan, C.: Hybrid type checking. In: POPL, pp. 245\u2013256 (2006)","DOI":"10.1145\/1111320.1111059"},{"key":"12_CR10","doi-asserted-by":"crossref","unstructured":"Furr, M., An, J., Foster, J., Hicks, M.: Static type inference for Ruby. In: Symposium on Applied Computing, pp. 1859\u20131866 (2009)","DOI":"10.1145\/1529282.1529700"},{"key":"12_CR11","unstructured":"Grech, N.: Preemptive Type Checking in Dynamically Typed Languages. PhD thesis, University of Southampton (submitted)"},{"key":"12_CR12","doi-asserted-by":"crossref","unstructured":"Might, M., Smaragdakis, Y., Horn, D.: Resolving and Exploiting the k-CFA Paradox. In: PLDI, pp. 305\u2013315 (2010)","DOI":"10.1145\/1809028.1806631"},{"key":"12_CR13","doi-asserted-by":"crossref","unstructured":"Nystr\u00f6m, S.: A soft-typing system for Erlang. In: Erlang Workshop, pp. 56\u201371 (2003)","DOI":"10.1145\/940880.940888"},{"key":"12_CR14","unstructured":"Pierce, B.: Nominal and Structural Type Systems. In: Types and Programming Languages, ch. 19, pp. 247\u2013264 (2002)"},{"key":"12_CR15","unstructured":"Salib, M.: Starkiller: A Static Type Inferencer and Compiler for Python. Thesis, MIT (2004)"},{"key":"12_CR16","doi-asserted-by":"crossref","unstructured":"Shivers, O.: Control-flow analysis in Scheme. In: PLDI, pp. 164\u2013174 (1988)","DOI":"10.1145\/960116.54007"},{"issue":"4","key":"12_CR17","doi-asserted-by":"publisher","first-page":"257","DOI":"10.1145\/989393.989421","volume":"39","author":"O. Shivers","year":"2004","unstructured":"Shivers, O.: Higher-order control-flow analysis in retrospect: lessons learned, lessons abandoned. ACM SIGPLAN Notices\u00a039(4), 257\u2013269 (2004)","journal-title":"ACM SIGPLAN Notices"},{"key":"12_CR18","unstructured":"Siek, J., Taha, W.: Gradual typing for functional languages. In: Scheme and Functional Programming Workshop (2006)"},{"key":"12_CR19","doi-asserted-by":"crossref","unstructured":"Siek, J., Vachharajani, M.: Gradual typing with unification-based inference. In: DLS (2008)","DOI":"10.1145\/1408681.1408688"},{"key":"12_CR20","unstructured":"Heidegger, P., Thiemann, P.: Recency Types for Dynamically-Typed, Object-Based Languages. In: FOOL (2009)"},{"key":"12_CR21","doi-asserted-by":"crossref","unstructured":"Tobin-Hochstadt, S., Felleisen, M.: The design and implementation of typed scheme. In: POPL, pp. 395\u2013406 (2008)","DOI":"10.1145\/1328897.1328486"},{"key":"12_CR22","doi-asserted-by":"publisher","first-page":"87","DOI":"10.1145\/239912.239917","volume":"19","author":"A. Wright","year":"1997","unstructured":"Wright, A., Cartwright, R.: A practical soft type system for scheme. ACM Transactions on Programming Languages and Systems\u00a019, 87\u2013152 (1997)","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"12_CR23","doi-asserted-by":"crossref","unstructured":"Wrigstad, T., Nardelli, F., Lebresne, S., \u00d6stlund, J., Vitek, J.: Integrating typed and untyped code in a scripting language. In: POPL, pp. 377\u2013388 (2010)","DOI":"10.1145\/1707801.1706343"},{"key":"12_CR24","doi-asserted-by":"crossref","unstructured":"Rastogi, A., Chaudhuri, A., Hosmer, B.: The Ins and Outs of gradual type inference. In: POPL, pp. 481\u2013494 (2012)","DOI":"10.1145\/2103621.2103714"},{"key":"12_CR25","unstructured":"TIOBE Programming Community Index (2013), \n                  \n                    www.tiobe.com"}],"container-title":["Lecture Notes in Computer Science","Theoretical Aspects of Computing \u2013 ICTAC 2013"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-39718-9_12","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,19]],"date-time":"2019-05-19T21:55:42Z","timestamp":1558302942000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-39718-9_12"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013]]},"ISBN":["9783642397172","9783642397189"],"references-count":25,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-39718-9_12","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2013]]}}}