@string{jan = "January"} @STRING{elsevier = "Elsevier" } @string{isaira = "International Symposium on Artificial Intelligence, Robotics and Automation in Space"} @string{rice = "Rice University"} @string{ieee-computer = "IEEE Computer"} @string{rv = "Run-Time Verification"} @string{aosd = "International Conference on Aspect-Oriented Software Development"} @string{ase = "IEEE International Symposium on Automated Software Engineering"} @string{cacm = "Communications of the ACM"} @string{cbse = "ICSE Workshop on Component-Based Software Engineering"} @string{computing-surveys = "ACM Computing Surveys"} @string{dsl = "USENIX Conference on Domain-Specific Languages"} @string{ecoop = "European Conference on Object-Oriented Programming"} @string{esop = "European Symposium on Programming"} @string{esec/fse = "Joint European Software Engineering Conference and ACM SIGSOFT Symposium on the Foundations of Software Engineering"} @string{fool = "Foundations of Object-Oriented Languages"} @string{fse = "ACM SIGSOFT International Symposium on the Foundations of Software Engineering"} @string{gcse = "International Symposium on Generative and Component-Based Software Engineering"} @string{ic = "Information \& Computation"} @string{icalp = "International Conference on Automata, Languages and Programming"} @string{icfp = "ACM SIGPLAN International Conference on Functional Programming"} @string{icse = "International Conference on Software Engineering"} @string{icsr = "International Conference on Software Reuse"} @string{jcss = "Journal of Computer and System Sciences"} @string{jfp = "Journal of Functional Programming"} @string{lasc = "Lisp and Symbolic Computation"} @string{lfp = "ACM Symposium on Lisp and Functional Programming"} @string{monterey2001 = "Monterey Workshop on Engineering Automation for Software Intensive System Integration"} @string{oopsla = "ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages \& Applications"} @string{padl = "Symposium on the Practical Aspects of Declarative Languages"} @string{pepm = "ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation"} @string{pldibase = "Conference on Programming Language Design and Implementation"} @string{pldi = "ACM SIGPLAN " # pldibase} @string{plilp = "International Symposium on Programming Languages: Implementations, Logics, and Programs"} @string{plop = "Pattern Languages of Program Design"} @string{sigplan-notices = "ACM SIGPLAN Notices"} @string{sosp = "Symposium on Operating System Principles"} @string{spe = "Software--Practice and Experience"} @string{spin-sw-mc = "SPIN Workshop on Software Model Checking"} @string{swconfmgmt = "International Workshop on Software Configuration Management"} @string{tcs = "Theoretical Computer Science"} @string{tocs = "ACM Transactions on Computer Systems"} @string{tools-symp = "Technology of Object-Oriented Languages and Systems"} @string{toplas = "ACM Transactions on Programming Languages and Systems"} @string{tosem = "ACM Transactions on Software Engineering and Methodology"} @string{ieee-software = "IEEE Software"} @string{ieee-tose = "IEEE Transactions on Software Engineering"} @string{fme = "{International Symposium of Formal Methods Europe}"} @string{nyny = {New York, NY, USA}} @string{acm = "Association for Computing Machinery"} @string{acmpress = "ACM Press"} @string{addison-wesley = "Addison-Wesley"} @string{addison-wesley-longman = "Addison Wesley Longman"} @string{cup = "Cambridge"} @string{fsf = "Free Software Foundation"} @string{mit-press = "MIT Press"} @string{springer = "Springer-Verlag"} @string{prentice-hall = "Prentice-Hall"} @string{pws = "PWS Publishing"} @string{mcgraw-hill = "McGraw-Hill"} @string{wiley = "Wiley"} @string {mit-lcs = "MIT Laboratory for Computer Science"} @string{manuscript = "Unpublished manuscript"} @string{personal = "Personal communication"} @string{tr = "Technical Report"} @string{lncs = "Lecture Notes in Computer Science"} @string{lncs:short = "LNCS"} @string{w3c = "{W}orld {W}ide {W}eb {C}onsortium"} @string{popl = "ACM SIGPLAN-SIGACT {S}ymposium on {P}rinciples of {P}rogramming {L}anguages"} @string{popl:short = "{S}ymposium on {P}rinciples of {P}rogramming {L}anguages"} @string{popl81 = "POPL '81: Proceedings of the 8th " # popl} @string{popl88 = "POPL '88: Proceedings of the 15th " # popl} @string{popl91 = "POPL '91: Proceedings of the 18th " # popl} @string{popl94 = "POPL '94: Proceedings of the 21st " # popl} @string{popl95 = "POPL '95: Proceedings of the 22nd " # popl} @string{popl98 = "POPL '98: Proceedings of the 25th " # popl} @string{popl06 = "Conference Record of POPL '06: The 33th " # popl} @string{popl07 = "Conference Record of POPL '07: The 34th " # popl} @string{popl08 = "POPL '08: Proceedings of the 35th " # popl} @string{pldi88 = "PLDI '88: Proceedings of the ACM SIGPLAN 1988 " # pldibase} @string{pldi91 = "PLDI '91: Proceedings of the ACM SIGPLAN 1991 " # pldibase} @string{pldi96 = "PLDI '96: Proceedings of the ACM SIGPLAN 1996 " # pldibase} @string{pldi98 = "PLDI '98: Proceedings of the ACM SIGPLAN 1998 " # pldibase} @string{pldi08 = "PLDI '08: Proceedings of the ACM SIGPLAN 2008 " # pldibase} @string{pldi:short = "Programming Language Design and Implementation"} @string{icfpbase = "ACM SIGPLAN International Conference on Functional Programming"} @string{icfp:short = "International Conference on Functional Programming"} @string{icfp97 = {ICFP '97: Proceedings of the Second } # icfpbase} @string{icfp98 = {ICFP '98: Proceedings of the Third } # icfpbase} @string{icfp02 = {ICFP '02: Proceedings of the Seventh } # icfpbase} @string{icfp03 = {ICFP '03: Proceedings of the Eighth } # icfpbase} @string{icfp05 = {ICFP '05: Proceedings of the Tenth } # icfpbase} @string{scheme07 = "Proceedings of the 2007 Workshop on Scheme and Functional Programming, Universit\'e Laval Technical Report DIUL-RT-0701"} @string{scheme06 = {Seventh Workshop on Scheme and Functional Programming, University of Chicago Technical Report TR-2006-06}} @string{scheme00 = {Proceedings of the Workshop on Scheme and Functional Programming, Rice Technical Report 00-368}} @string{lfp86 = {LFP '86: Proceedings of the 1986 ACM Conference on LISP and Functional Programming}} @string{lfp94 = {LFP '94: Proceedings of the 1994 ACM Conference on LISP and Functional Programming}} @string{aplas06 = "Asian Symposium on Programming Languages and Systems (APLAS) 2006"} @string{stop09title = {STOP '09: Proceedings for the 1st workshop on Script to Program Evolution}} @string{oopslabase = {annual ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages, and Applications}} @string{dls:short = {Dynamic Languages Symposium}} @string{oopsla93 = {OOPSLA '93: Proceedings of the 8th } # oopslabase} @string{oopsla05 = {OOPSLA '05: Proceedings of the 20th } # oopslabase} @string{oopsla06companion = {OOPSLA '06: Companion to the 21st } # oopslabase} @string{sacbase = "ACM Symposium on Applied Computing"} @string{sac09 = {SAC '09: Proceedings of the 2009 } # sacbase} @string{sac07 = {SAC '07: Proceedings of the 2007 } # sacbase} @string{esopbase = {European Symposium on Programming}} @string{esop:short = {European Symposium on Programming}} @string{esop92 = {ESOP'92: Selected papers of the Fourth } # esopbase} @string{esop09 = {{ESOP} '09: Proceedings of the Eighteenth } # esopbase} @string{fpca95 = {FPCA '95: Proceedings of the Seventh International Conference on Functional Programming Languages and Computer Architecture}} @string{tacas = "Tools and Algorithms for the Construction and Analysis of Systems"} @inproceedings{cartwright:paths, author = {Cartwright, Robert and Hood, Robert and Matthews, Philip}, title = {Paths: an abstract alternative to pointers}, booktitle = popl81, year = {1981}, isbn = {0-89791-029-X}, pages = {14--27}, location = {Williamsburg, Virginia}, publisher = acmpress, address = nyny, } @inproceedings{thf:popl08, author = {Sam Tobin-Hochstadt and Matthias Felleisen}, title = {The Design and Implementation of {Typed} {Scheme}}, booktitle = popl08, year = {2008}, pages = "395--406", publisher = acmpress, } @inproceedings{thf:popl08:short, author = {Sam Tobin-Hochstadt and Matthias Felleisen}, title = {The Design and Implementation of {Typed} {Scheme}}, booktitle = popl:short, year = "2008", pages = "395--406", } @incollection{ Howard80, author = "William A. Howard", title = "The formulas-as-types notion of construction", booktitle = "To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus, and Formalism", editor = "J. P. Seldin and J. R. Hindley", publisher = "Academic Press", address = nyny, year = 1980, pages = "479--490", note = "Reprint of 1969 article" } @book{COQBook, title = {Interactive Theorem Proving and Program Development}, subtitle = {Coq'Art: The Calculus of Inductive Constructions}, series = {EATCS Texts in Theoretical Computer Science}, author = {Bertot, Yves and Cast\'eran, Pierre}, year = 2004, volume = {XXV}, publisher = springer, } @phdthesis{agda, author = {Ulf Norell}, title = {Towards a practical programming language based on dependent type theory}, school = {Chalmers University of Technology}, year = 2007} @inproceedings{c:typed-lisp, author="Robert Cartwright", title="User-Defined Data Types as an Aid to Verifying {LISP} Programs", booktitle=icalp, pages = {228--256}, year="1976"} @article{palsberg95, author = {Palsberg, Jens and O'Keefe, Patrick}, title = {A type system equivalent to flow analysis}, journal = {ACM Trans. Program. Lang. Syst.}, volume = {17}, number = {4}, year = {1995}, pages = {576--599}, publisher = acmpress, address = nyny, } @inproceedings{palsberg01, author = {Palsberg, Jens and Pavlopoulou, Christina}, title = {From polyvariant flow information to intersection and union types}, booktitle = popl98, year = {1998}, isbn = {0-89791-979-3}, pages = {197--208}, location = {San Diego, California, United States}, publisher = acmpress, address = nyny, } @inproceedings{cf:hybrid, author = {Flanagan, Cormac}, title = {Hybrid type checking}, booktitle = popl06, year = {2006}, isbn = {1-59593-027-2}, pages = {245--256}, location = {Charleston, South Carolina, USA}, publisher = acmpress, address = nyny, } @inproceedings{mwh:refinement, author = {Mandelbaum, Yitzhak and Walker, David and Harper, Robert}, title = {An effective theory of type refinements}, booktitle = icfp03, year = {2003}, isbn = {1-58113-756-7}, pages = {213--225}, location = {Uppsala, Sweden}, publisher = acmpress, address = nyny, } @phdthesis{aw:soft-typing, author="Andrew Wright", title="Practical Soft Typing", school="{R}ice {U}niversity", year="1994"} @inproceedings{might:lfa, author = {Might, Matthew}, title = {Logic-flow analysis of higher-order programs}, booktitle = popl07, year = {2007}, isbn = {1-59593-575-4}, pages = {185--198}, location = {Nice, France}, publisher = acmpress, address = nyny, } @inproceedings{sthf:variable-arity, author = {T. Stephen Strickland and Sam Tobin-Hochstadt and Matthias Felleisen}, title = {Practical Variable-Arity Polymorphism}, booktitle = esop09, pages = {32--46}, year = 2009, series = lncs, publisher = springer, volume = "5502", location = {York, UK}, } @inproceedings{sthf:variable-arity:short, author = {T. Stephen Strickland and Sam Tobin-Hochstadt and Matthias Felleisen}, title = {Practical Variable-Arity Polymorphism}, booktitle = esop:short, pages = {32--46}, series = lncs:short, year = "2009", volume = "5502", } @techreport{h:infer, author = "Christopher T. Haynes", title = "Infer: A Statically-typed Dialect of {Scheme}", institution = "Indiana University", year = "1995", type = "Technical Report", number = "367" } @inproceedings{dh:var-ar, author = {Hsianlin Dzeng and Christopher T. Haynes}, title = {Type reconstruction for variable-arity procedures}, booktitle = lfp94, year = {1994}, pages = {239--249}, location = {Orlando, Florida, United States}, publisher = acmpress, address = nyny, } @techreport{leavens, author = "Gary T. Leavens and Curtis Clifton and Brian Dorn", title = "{A Type Notation for Scheme}", institution = "Iowa State University", year = "2005", number = "05-18a", } @techreport{plt-tr2009-reference-v4.2.2, author = {Matthew Flatt and PLT}, title = {Reference: {PLT} {Scheme}}, number = {PLT-TR2009-reference-v4.2.2}, type = {Reference Manual}, institution = {PLT Scheme Inc.}, year = {2009}, url = {http://download.plt-scheme.org/doc/4.2.2/pdf/reference.pdf}, note = {\url{http://plt-scheme.org/techreports/}} } @article{fs:ziggurat-jfp, author = {Fisher,David and Shivers,Olin}, title = {Building language towers with {Ziggurat}}, journal = jfp, volume = {18}, number = {5 {{\&}} 6}, pages = {707-780}, year = {2008}, eprint = {http://journals.cambridge.org/article_S0956796808006928}, } @InProceedings{pcmkf:continuations, author = "Greg Pettyjohn and John Clements and Joe Marshall and Shriram Krishnamurthi and Matthias Felleisen", title = "Continuations from Generalized Stack Inspection", booktitle = icfp05, year = "2005", pages = "216--227", publisher = acmpress, address = nyny, } @inproceedings{wand84, author = {Mitchell Wand}, title = {A semantic prototyping system}, booktitle = {{SIGPLAN '84: Proceedings of the 1984 SIGPLAN Symposium on Compiler Construction}}, year = {1984}, pages = {213--221}, location = {Montreal, Canada}, publisher = acmpress, address = nyny, } @INPROCEEDINGS{cpp-varity, AUTHOR = {Douglas Gregor and Jaakko J{\"a}rvi}, TITLE = {Variadic templates for {C++}}, BOOKTITLE = sac07, YEAR = {2007}, ISBN = {1-59593-480-4}, PAGES = {1101--1108}, LOCATION = {Seoul, Korea}, PUBLISHER = acmpress, address = nyny, } @techreport{flexijava, author = {T. Stephen Strickland and Richard Cobbe and Matthias Felleisen}, title = {Variable-arity Generic Interfaces}, institution = {Northeastern University}, year = {2008}, number = {NU-CCIS-08-01}, } @article{faking-it, author = {Conor McBride}, title = {Faking it: Simulating Dependent Types in {Haskell}}, journal = {Journal of Functional Programming}, volume = {12}, number = {5}, year = {2002}, pages = {375--392}, publisher = {Cambridge University Press}, } @inproceedings{moggi, author = {Eugenio Moggi}, title = "Arity Polymorphism and Dependent Types", location = {Ponte de Lima, Portugal}, booktitle = "Proceedings of the International Workshop on Subtyping and Dependent Types in Programming", year = 2000, } @techreport{dots-tr, author = {T. Stephen Strickland and Sam Tobin-Hochstadt and Matthias Felleisen}, title = {{Variable-Arity Polymorphism}}, institution = {Northeastern University}, year = {2008}, number = {NU-CCIS-08-03}, url = {http://www.ccs.neu.edu/scheme/pubs/NU-CCIS-08-03.pdf}, } @inproceedings{zip-calc, author = "Mark Tullsen", year = "2000", title = "The Zip Calculus", booktitle = "Mathematics of Program Construction", editor = "Roland Backhouse and Jose Nuno Oliveira", series = lncs, publisher = springer, volume = "1837", pages = "28-44", } @inproceedings{girard71, author = {J.-Y. Girard}, title = {Une extension de l'interpr\'{e}tation de {G\"{o}del} \`{a} l'analyse, et son application \`{a} l'\'{e}limination de coupures dans l'analyse et la th\'{e}orie des types}, booktitle = {Proceedings of the Second Scandinavian Logic Symposium}, year = {1971}, publisher = {North-Holland Publishing Co.}, pages = {63--92}, editor = {J. E. Fenstad}, } @inproceedings{culpepper05units, author = {Ryan Culpepper and Scott Owens and Matthew Flatt}, title = {Syntactic Abstraction in Component Interfaces}, booktitle = {Generative Programming and Component Engineering}, series = lncs, volume = "3676", publisher = springer, year = {2005}, pages = {373-388}, } @inproceedings{ hilsdale00writing, author = "Erik Hilsdale and Daniel P. Friedman", title = "Writing macros in continuation-passing style", booktitle = scheme00, pages = {53-60}, year = "2000"} @book{boyer-moore97, title = {A Computational Logic}, edition = "Second", author = {R. S. Boyer and J. S. Moore}, year = {1997}, publisher = {Academic Press}, address = nyny, } @inproceedings{mw:erlang, author = {Simon Marlow and Philip Wadler}, title = {A practical subtyping system for {Erlang}}, booktitle = icfp97, year = {1997}, isbn = {0-89791-918-1}, pages = {136--149}, location = {Amsterdam, The Netherlands}, publisher = acmpress, address = nyny, } @inproceedings{mf:multilang, author = {Matthews, Jacob and Findler, Robert Bruce}, title = {Operational semantics for multi-language programs}, booktitle = popl07, year = {2007}, pages = {3--10}, location = {Nice, France}, publisher = acmpress, address = nyny, } @inproceedings{fff:classes, author="Matthew Flatt and Robert Bruce Findler and Matthias Felleisen", title="Scheme with Classes, Mixins, and Traits", booktitle=aplas06, year="2006", series = lncs, publisher = springer, volume = "4279", pages="270--289" } @article{mf:multilang-toplas, author = {Matthews, Jacob and Findler, Robert Bruce}, title = {Operational semantics for multi-language programs}, journal = toplas, volume = {31}, number = {3}, year = {2009}, pages = {1--44}, publisher = acmpress, address = nyny, } @inproceedings{krcf:occurrence, author = {Raghavan Komondoor and G. Ramalingam and Satish Chandra and John Field}, title = {Dependent types for program understanding}, booktitle = tacas, year = {2005}, pages = {157--173}, series = lncs, publisher = springer, volume = {3440} } @inproceedings{Reynolds68, author = {Reynolds, John C.}, booktitle = {IFIP Congress (1)}, citeulike-article-id = {1597266}, citeulike-linkout-0 = {ftp://ftp.cs.cmu.edu/user/jcr/autodataset.pdf}, keywords = {shape-analysis}, pages = {456--461}, posted-at = {2007-08-27 21:07:04}, priority = {0}, title = {Automatic computation of data set definitions.}, url = {ftp://ftp.cs.cmu.edu/user/jcr/autodataset.pdf}, year = {1968} } @TechReport{m:nisp, author = {Drew McDermott}, title = {Revised {NISP} Manual}, institution = {Yale University, Department of Computer Science}, year = 2004, number = {YALE/DCS/RR-642}, } @book{ltm:php, author = {Lerdorf, Rasmus and Tatroe, Kevin and MacIntyre, Peter}, edition = {Second}, publisher = {O'Reilly Media}, title = {Programming PHP}, year = {2006} } @book{vd:python-ref-man, author = {Van Rossum, Guido and Drake, Fred L.}, isbn = {1441412697}, publisher = {CreateSpace}, title = {Python 3 Reference Manual: (Python Documentation Manual Part 2)}, year = {2009} } @inproceedings{thf:stop09, author = {Tobin-Hochstadt, Sam and Findler, Robert Bruce}, title = {Cycles without pollution: a gradual typing poem}, booktitle = stop09title, year = {2009}, crossref = "stop09", isbn = {978-1-60558-543-7}, pages = {47--57}, location = {Genova, Italy}, doi = {http://doi.acm.org/10.1145/1570506.1570512}, publisher = acmpress, address = nyny, } @article{m:design-by-contract-article, author="Bertrand Meyer", title="Applying Design by Contract", year=1992, pages="40--51", journal=ieee-computer, volume=25, number=10} @book{squadron-scramble, author= "Stuart Kaplan", title="Squadron Scramble", year="2002", publisher = "US Game Systems", address = "Stamford, CT", isbn = "1-57281-344-X", } @inproceedings{am:static-types-dynamic-language, author="Alexander Aiken and Brian R. Murphy", title="Static Type Inference in a Dynamically Typed Language", booktitle= popl91, year= "1991", pages = "279--290", publisher = acmpress, address = nyny, } @inproceedings{awl:popl94, author = {Alexander Aiken and Edward L. Wimmers and T. K. Lakshman}, title = {Soft typing with conditional types}, booktitle = popl94, year = {1994}, pages = {163--173}, location = {Portland, Oregon, United States}, publisher = acmpress, address = nyny, } @inproceedings{cr:mtw, author="William Clinger and Jonathan Rees", title="Macros That Work", booktitle=popl91, year="1991", pages="155--162", publisher = acmpress, address = nyny,} @article{ac:subtyping-recursive-types, author = {Amadio, Roberto M. and Cardelli, Luca}, title = {Subtyping recursive types}, journal = toplas, volume = {15}, number = {4}, year = {1993}, pages = {575--631}, doi = {http://doi.acm.org/10.1145/155183.155231}, publisher = acmpress, address = nyny, } @inproceedings{bracha:pluggable, author = {Gilad Bracha}, title = {Pluggable Type Systems}, year = {2004}, day = 17, booktitle = {OOPSLA Workshop on the Revival of Dynamic Languages} } @inproceedings{cf:pldi91, author = {Robert Cartwright and Mike Fagan}, title = {Soft typing}, booktitle = pldi91, year = {1991}, pages = {278--292}, location = {Toronto, Ontario, Canada}, publisher = acmpress, address = nyny, } @inproceedings{weirich98, author = {Karl Crary and Stephanie Weirich and Greg Morrisett}, title = {Intensional polymorphism in type-erasure semantics}, booktitle = icfp98, year = {1998}, isbn = {1-58113-024-4}, pages = {301--312}, location = {Baltimore, Maryland, United States}, doi = {http://doi.acm.org/10.1145/289423.289459}, publisher = acmpress, address = nyny, } @inproceedings{ctf:macros, author = "Ryan Culpepper and Sam Tobin-Hochstadt and Matthew Flatt", title = "Advanced {M}acrology and the {I}mplementation of {T}yped {S}cheme", year = "2007", booktitle = scheme07, pages = "1-13", } @inproceedings{ctf:macros:short, author = "Ryan Culpepper and Sam Tobin-Hochstadt and Matthew Flatt", title = "Advanced {M}acrology and the {I}mplementation of {T}yped {S}cheme", year = "2007", booktitle = "Scheme Workshop", pages = "1-13", } @inproceedings{wadler-findler-scheme, author = "Philip Wadler and Robert Bruce Findler", title = "Well-typed programs can't be blamed", year = "2007", booktitle = scheme07, } @inproceedings{wadler-findler, author = "Philip Wadler and Robert Bruce Findler", title = "Well-typed programs can't be blamed", booktitle = esop09, pages = "1--16", year = "2009", series = lncs, publisher = springer, volume = "5502", location = {York, UK}, } @inproceedings{wadler-findler:short, author = "Philip Wadler and Robert Bruce Findler", title = "Well-typed programs can't be blamed", booktitle = esop:short, year = "2009", pages = "1--16", series = lncs:short, volume = "5502", } @book{cf:cl, title="Combinatory Logic", volume = "I", author="Haskell B. Curry and Robert Feys", publisher="North-Holland", address ="Amsterdam", year="1958"} @article{dhb:sc, author="R.~Kent Dybvig and Robert Hieb and Carl Bruggeman", title="Syntactic abstraction in {S}cheme", journal=lasc, year="1993", volume="5", number="4", pages="295--326",} @book{fffk:htdp, author = "Matthias Felleisen and Robert Bruce Findler and Matthew Flatt and Shriram Krishnamurthi", title = "How to {D}esign {P}rograms", publisher = mit-press, year = 2001, url = "http://www.htdp.org/" } @inproceedings{ff:ho-contracts, title="Contracts for Higher-Order Functions", author="Robert Bruce Findler and Matthias Felleisen", booktitle=icfp02, pages={48--59}, year=2002, publisher = acmpress, address = nyny, } @inproceedings{ff:ho-contracts:short, title="Contracts for Higher-Order Functions", author="Robert Bruce Findler and Matthias Felleisen", booktitle=icfp:short, year = "2002", pages={48--59}, } @techreport{ff:ho-contracts-techreport, title="Contracts for Higher-Order Functions", author="Robert Bruce Findler and Matthias Felleisen", institution="Northeastern University", number="NU-CCS-02-05", year=2002} @article{ff:toplas99, author = {Cormac Flanagan and Matthias Felleisen}, title = {Componential set-based analysis}, journal = toplas, volume = {21}, number = {2}, year = {1999}, pages = {370--416} } @inproceedings{ffkwf:mrspidey, author="Cormac Flanagan and Matthew Flatt and Shriram Krishnamurthi and Stephanie Weirich and Matthias Felleisen", title="Catching Bugs in the Web of Program Invariants", booktitle=pldi96, year="1996", pages="23--32", publisher = acmpress, address = nyny, } @inproceedings{f:modules, title="Composable and Compilable Macros: You Want it {\em When?}", author="Matthew Flatt", booktitle=icfp02, pages={72--83}, publisher = acmpress, address = nyny, year=2002} @InProceedings{ff:units, author = "Matthew Flatt and Matthias Felleisen", title = "Units: Cool Modules for {HOT} Languages", booktitle = pldi98, year = "1998", publisher = acmpress, address = nyny, pages = "236--248" } @inproceedings{fp:refinement, title="Refinement types for {ML}", author="Tim Freeman and Frank Pfenning", booktitle=pldi91, year=1991, pages="268--277", publisher = acmpress, address = nyny, } @inproceedings{furr:ruby:stop, author = {Furr, Michael and An, Jong-hoon (David) and Foster, Jeffrey S. and Hicks, Michael}, title = {Tests to the left of me, types to the right: how not to get stuck in the middle of a {Ruby} execution}, crossref = "stop09", isbn = {978-1-60558-543-7}, pages = {14--16}, doi = {http://doi.acm.org/10.1145/1570506.1570508}, } @inproceedings{furr:ruby:sac, author = {Furr, Michael and An, Jong-hoon (David) and Foster, Jeffrey S. and Hicks, Michael}, title = {Static type inference for Ruby}, booktitle = sac09, year = {2009}, isbn = {978-1-60558-166-8}, pages = {1859--1866}, location = {Honolulu, Hawaii}, doi = {http://doi.acm.org/10.1145/1529282.1529700}, publisher = acmpress, address = nyny, } @proceedings{stop09, editor = {Wrigstad, Tobias and Nystrom, Nate and Vitek, Jan}, title = stop09title, year = {2009}, isbn = {978-1-60558-543-7}, location = {Genova, Italy}, publisher = acmpress, address = nyny, } @techreport{ fx87, author = "David Gifford and Pierre Jouvelot and John Lucassen and Mark Sheldon", title = "{FX}-87 {Reference} {Manual}", institution = "Massachusetts Institute of Technology, Laboratory for Computer Science", type = "Technical Report", number = "MIT/LCS/TR-407", orignumber = "MIT-LCS//MIT/LCS/TR-407", pages = "148", year = "1987", } @inproceedings{gff:oopsla05, author = {Kathryn E. Gray and Robert Bruce Findler and Matthew Flatt}, title = {Fine-grained interoperability through mirrors and contracts}, booktitle = oopsla05, year = {2005}, isbn = {1-59593-031-0}, pages = {231--245}, location = {San Diego, CA, USA}, doi = {http://doi.acm.org/10.1145/1094811.1094830}, publisher = acmpress, address = nyny, } @inproceedings{ harper95compiling, author = "Robert Harper and Greg Morrisett", title = "Compiling Polymorphism Using Intensional Type Analysis", booktitle = popl95, pages = "130--141", year = "1995", publisher = acmpress, address = nyny, } @inproceedings{nh:sba, author="Heintze, Nevin", title="Set based analysis of {ML} programs", booktitle=lfp94, pages={306--317}, year=1994, publisher = acmpress, address = nyny,} @article{h:dynamic-article, author="Fritz Henglein", title="Dynamic Typing: Syntax and Proof Theory", journal=scp, volume="22", number="3", pages="197--230", year="1994"} @inproceedings{h:dynamic-conf, author = {Henglein, Fritz}, title = {Dynamic typing: syntax and proof theory}, booktitle = esop92, year = {1994}, pages = {197--230}, location = {Rennes, France}, doi = {http://dx.doi.org/10.1016/0167-6423(94)00004-2}, publisher = {Elsevier Science Publishers B. V.}, address = {Amsterdam, The Netherlands, The Netherlands}, } @inproceedings{hr:fpca95, author = {Fritz Henglein and Jakob Rehof}, title = {Safe polymorphic type inference for a dynamically typed language: translating {Scheme} to {ML}}, booktitle = fpca95, year = {1995}, pages = {192--203}, location = {La Jolla, California, United States}, publisher = acmpress, address = nyny,} @proceedings{TFP2007, editor = {Marco T. Moraz\'an}, title = {Proceedings of the Eighth Symposium on Trends in Functional Programming, TFP 2007, New York City, USA, 2-4 April 2007}, booktitle = {Trends in Functional Programming}, publisher = {Intellect, UK/The University of Chicago Press, USA}, series = {Trends in Functional Programming}, volume = {8}, year = {2008}, isbn = {978-1-84150-196-3} } @inproceedings{Herman07, author = {David Herman and Aaron Tomb and Cormac Flanagan}, title = {Space-Efficient Gradual Typing}, booktitle = {Proceedings of the Eighth Symposium on Trends in Functional Programming, TFP 2007}, year = {2008}, pages = {1-18}, } @article{kcr:r5rs, author="Richard Kelsey and William Clinger and Jonathan {Rees (Eds.)}", title = "Revised$^5$ Report of the Algorithmic Language {Scheme}", journal = sigplan-notices, volume="33", number=9, pages="26--76", year=1998} @inproceedings{kffd:hygiene, author="Eugene E.~Kohlbecker and Daniel P.~Friedman and Matthias Felleisen and Bruce F.~Duba", title="Hygienic Macro Expansion", booktitle=lfp86, year="1986", pages="151--161", publisher = acmpress, address = nyny,} @inproceedings{lg:effect-systems, title="Polymorphic Effect Systems", author="John M. Lucassen and David K. Gifford", year=1988, booktitle=popl88, pages="47--57", publisher = acmpress, address = nyny,} @book{ ruby, title = "Ruby in a Nutshell", author = "Yukihiro Matsumoto", publisher = "O'Reilly Media", year = 2001 } @inproceedings{mff:popl06, author = {Philippe Meunier and Robert Bruce Findler and Matthias Felleisen}, title = {Modular set-based analysis from contracts}, booktitle = popl06, year = {2006}, pages = {218--231}, location = {Charleston, South Carolina, USA}, publisher = acmpress, address = nyny, } @misc{xkcd, title="Exploits of a Mom", author="Randal Munroe", year = {2007}, howpublished = "\url{http://xkcd.com/327/}"} @book{tcltk, author = "John K. Ousterhout", title = "Tcl and the Tk Toolkit", publisher = "Addison Wesley", isbn = "0-201-63337-X", year = "1994", } @techreport{pierce-union, author = "Benjamin C. Pierce", title = "Programming with Intersection Types, Union Types, and Polymorphism", institution = "Carnegie Mellon University", number = "CMU-CS-91-106", year = "1991", } @article{pierce:lti, author = {Benjamin C. Pierce and David N. Turner}, title = {Local type inference}, journal = toplas, volume = {22}, number = {1}, year = {2000}, pages = {1--44}, publisher = acmpress, address = nyny, } @misc{ecma-wiki, author = "{ECMA}", title = "{ECMAScript Edition 4 group wiki}", year = 2007, url = "http://wiki.ecmascript.org/" } @inproceedings{ reynolds, author = "Reynolds, John C.", title = "Types, Abstraction, and Parametric Polymorphism", booktitle = "Information Processing 83, Paris, France", editor = "R. E. A. Mason", fullpublisher = "Elsevier Science Publishers B. V. (North-Holland)", fulladdress = "Amsterdam", publisher = elsevier, year = "1983", pages = "513--523", source = "reynolds bib, with corrections from physical copy", checked = "checked January 1988" } @inproceedings{liquid-types, author = {Rondon, Patrick M. and Kawaguci, Ming and Jhala, Ranjit}, title = {Liquid types}, booktitle = pldi08, year = {2008}, isbn = {978-1-59593-860-2}, pages = {159--169}, location = {Tucson, AZ, USA}, doi = {http://doi.acm.org/10.1145/1375581.1375602}, publisher = acmpress, address = nyny, } @mastersthesis{some-mit-ms-thesis, author = {Michael Salib}, title = {Starkiller: A Static Type Inferencer and Compiler for {P}ython}, year = 2004, school = "Massachusetts Institute of Technology", address = "Cambridge, Massachusetts" } @PhDThesis{shivers-thesis, author = "Shivers, Olin", title = "Control-Flow Analysis of Higher-Order Languages {\small or Taming Lambda}", school = "Carnegie Mellon University", year = "1991", address = "Pittsburgh, Pennsylvania", } @InProceedings{st:gradual06, author = {Jeremy G. Siek and Walid Taha}, title = {Gradual typing for functional languages}, booktitle = scheme06, year = 2006, month = {September}, pages = {81--92} } @book{cl, title = "Common Lisp---The Language", author = "Guy Lewis {Steele Jr.}", publisher = "Digital Press", address = "Bedford, MA", year = "1984" } @book{cl2, title = "Common Lisp---The Language", edition = "Second", author = "Guy Lewis {Steele Jr.}", publisher = "Digital Press", address = "Woburn, MA", year = "1990" } @inproceedings{tang, author = {Audrey Tang}, title = {Perl 6: reconciling the irreconcilable}, booktitle = popl07, year = {2007}, pages = {1--1}, location = {Nice, France}, publisher = acmpress, address = nyny, note = "\url{http://pugscode.org}", } @inproceedings{thf:dls2006, author = {Sam Tobin-Hochstadt and Matthias Felleisen}, title = {Interlanguage migration: from scripts to programs}, booktitle = oopsla06companion, year = {2006}, pages = {964--974}, location = {Portland, Oregon, USA}, publisher = acmpress, } @inproceedings{thf:dls2006:short, author = {Sam Tobin-Hochstadt and Matthias Felleisen}, title = {Interlanguage migration: from scripts to programs}, booktitle = dls:short, pages = {964--974}, year = "2006", } @book{perl, author = "Larry Wall and Tom Christiansen and Randal L. Schwartz", title = "Programming Perl", edition = "Second", publisher = "O'Reilly \& Associates", year = 1996 } @article{wc:toplas97, author = {Andrew K. Wright and Robert Cartwright}, title = {A practical soft type system for {Scheme}}, journal = toplas, volume = {19}, number = {1}, year = {1997}, pages = {87--152} } @article{wf:type-soundness, author="Andrew Wright and Matthias Felleisen", title="A syntactic approach to type soundness.", journal=ic, vol=115, num=1, year=1994, pages="38--94", note="{F}irst appeared as Technical Report TR160, Rice University, 1991"} @inproceedings{f:hybrid, author = {Flanagan, Cormac}, title = {Hybrid type checking}, booktitle = popl06, year = {2006}, isbn = {1-59593-027-2}, pages = {245--256}, location = {Charleston, South Carolina, USA}, doi = {http://doi.acm.org/10.1145/1111037.1111059}, publisher = acmpress, address = nyny, } @book{jls3, title = "The Java Language Specification", edition = "Third", author = "James Gosling and Bill Joy and {Steele Jr.}, Guy L. and Gilad Bracha", publisher = "Addison-Welsley", year = "2005" } @article{ii:gradual-featherweight, title={Gradual Typing for {Featherweight Java}}, author={Lintaro Ina and Atsushi Igarashi}, journal={Computer Software}, volume={26}, number={2}, pages={18--40}, year={2009}, } @inproceedings{hf:js-ml, author = {Herman, David and Flanagan, Cormac}, title = {Status report: specifying {JavaScript} with {ML}}, booktitle = {ML '07: Proceedings of the 2007 Workshop on ML}, year = {2007}, isbn = {978-1-59593-676-9}, pages = {47--52}, location = {Freiburg, Germany}, doi = {http://doi.acm.org/10.1145/1292535.1292543}, publisher = acmpress, address = nyny, } @Book{ecma-std, author = "{ECMA}", title = "{ECMA-262}: {ECMAScript} Language Specification", publisher = "ECMA (European Association for Standardizing Information and Communication Systems)", edition = "Third", year = "1999", ecmanumber = "ECMA-262", } @book{acl2-book, address = {Norwell, MA, USA}, author = {Kaufmann, Matt and Moore, J. Strother and Manolios, Panagiotis}, publisher = {Kluwer Academic Publishers}, title = {Computer-Aided Reasoning: An Approach}, year = {2000}, } @article{r6rs, author = {Sperber,Michael and Dybvig,R. Kent and Flatt,Matthew and Van Straaten,Anton and Findler,Robby and Matthews,Jacob}, title = {Revised$^6$ Report on the Algorithmic Language {Scheme}}, journal = {Journal of Functional Programming}, volume = {19}, number = {{Supplement S1}}, pages = {1-301}, year = {2009}, } @techreport{ss:scheme, author="Gerald J. Sussman and Guy Lewis {Steele Jr.}", title="Scheme: An interpreter for extended lambda calculus", institution="{MIT Artificial Intelligence Laboratory}", number="AIM-349", year=1975, } @misc{mitchfest-submitted, author="Sam Tobin-Hochstadt and Matthias Felleisen", title="The Design and Implementation of {Typed Scheme}", year = "2009", howpublished="Mansuscript under submission",} @inproceedings{ch:ultimate-label, author = {Clinger, William D. and Hansen, Lars Thomas}, title = {Lambda, the ultimate label, or a simple optimizing compiler for {Scheme}}, booktitle = lfp94, year = {1994}, isbn = {0-89791-643-3}, pages = {128--139}, location = {Orlando, Florida, United States}, publisher = acmpress, address = nyny, } @techreport{fortress-spec, author = "Eric Allen and David Chase and Joe Hallett and Victor Luchangco and Jan-Willem Maessen and Sukyoung Ryu and Guy L. Steele Jr. and Sam Tobin-Hochstadt", title = "The {Fortress} Language Specification Version 1.0", year = "2008", institution = "Sun Microsystems"} @inproceedings{r:fortress-syntax, author = {Ryu, Sukyoung}, title = {Parsing {Fortress} syntax}, booktitle = {PPPJ '09: Proceedings of the 7th International Conference on Principles and Practice of Programming in Java}, year = {2009}, pages = {76--84}, location = {Calgary, Alberta, Canada}, publisher = acmpress, } @InProceedings{s:cfa88, author = {Olin Shivers}, title = {Control-flow analysis in {Scheme}}, pages = {164--174}, booktitle = pldi88, year = "1988", } @InProceedings{s:cfa88:short, author = {Olin Shivers}, title = {Control-flow analysis in {Scheme}}, pages = {164--174}, booktitle = pldi:short, year = "1988", } @inproceedings{bigloo, author = {Serrano, Manuel and Weis, Pierre}, title = {{Bigloo}: A Portable and Optimizing Compiler for Strict Functional Languages}, booktitle = {SAS '95: Proceedings of the Second International Symposium on Static Analysis}, year = {1995}, pages = {366--381}, publisher = springer, address = {Glasgow, Scotland}, } @inproceedings{strongtalk, author = {Gilad Bracha and David Griswold}, title = {Strongtalk: typechecking {S}malltalk in a production environment}, booktitle = oopsla93, year = {1993}, pages = {215--230}, location = {Washington, D.C., United States}, publisher = acmpress, } @article{acpp:toplas91, author = {Martin Abadi and Luca Cardelli and Benjamin Pierce and Gordon Plotkin}, title = {Dynamic typing in a statically typed language}, journal = toplas, volume = {13}, number = {2}, year = {1991}, issn = {0164-0925}, pages = {237--268}, doi = {http://doi.acm.org/10.1145/103135.103138}, publisher = acmpress, }