Andreas Haeberlen, Benjamin C. Pierce, and Arjun Narayan. Differential Privacy Under Fire. In Proceedings of the 20th USENIX Security Symposium, August 2011. [ bib | .pdf ]
André DeHon, Ben Karel, Benoît Montagu, Benjamin C. Pierce, Jr. Jonathan M. Smithand Thomas F. Knight, Sumit Ray, Gregory Sullivan, Gregory Malecha, Greg Morrisett, Randy Pollack, Robin Morisset, and Olin Shivers. Preliminary Design of the SAFE Platform. Submitted, June 2011. [ bib | .pdf ]
Benjamin C. Pierce, Chris Casinghino, Michael Greenberg, Vilhelm Sjoberg, and Brent Yorgey. Software Foundations. Distributed electronically, 2011. [ bib | full version ]
Martin Hofmann, Benjamin C. Pierce, and Daniel Wagner. Symmetric Lenses. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Austin, Texas, January 2011. [ bib | short version | full version ]
Joao Filipe Belo, Michael Greenberg, Atsushi Igarashi, and Benjamin C. Pierce. Polymorphic Contracts. In Gilles Barthe, editor, European Symposium on Programming (ESOP), Saarbrücken, Germany, volume 6602 of Lecture Notes in Computer Science, pages 18-37. Springer, 2011. [ bib ]
Benjamin C. Pierce. creativity: sensitivity and surprise, October 2010. Keynote talk at SPLASH / Onward! [ bib | slides ]
Davi M. J. Barbosa, Julien Cretin, Nate Foster, Michael Greenberg, and Benjamin C. Pierce. Matching Lenses: Alignment and View Update. In ACM SIGPLAN International Conference on Functional Programming (ICFP), Baltimore, Maryland, September 2010. [ bib | tech report | short version ]
Jason Reed and Benjamin C. Pierce. Distance Makes the Types Grow Stronger: A Calculus for Differential Privacy. In ACM SIGPLAN International Conference on Functional Programming (ICFP), Baltimore, Maryland, September 2010. [ bib | short version ]
Benjamin C. Pierce. Proof Assistant as Teaching Assistant: A View from the Trenches, July 2010. Keynote address at International Conference on Interactive Theorem Proving (ITP). [ bib | slides ]
Aaron Bohannon and Benjamin C. Pierce. Featherweight Firefox: Formalizing the Core of a Web Browser. In Usenix Conference on Web Application Development (WebApps), June 2010. [ bib | short version ]
Jason Reed, Adam J. Aviv, Daniel Wagner, Andreas Haeberlen, Benjamin C. Pierce, and Jonathan M. Smith. Differential Privacy for Collaborative Security. In European Workshop on System Security (EUROSEC), April 2010. [ bib | manuscript ]
Michael Greenberg, Benjamin C. Pierce, and Stephanie Weirich. Contracts Made Manifest. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Madrid, Spain. ACM, January 2010. [ bib | short version ]
Benjamin C. Pierce, Alessandro Romanel, and Daniel Wagner. The Spider Calculus: Computing in Active Graphs, 2010. [ bib | manuscript ]
Benjamin C. Pierce. Lambda, The Ultimate TA: Using a Proof Assistant to Teach Programming Language Foundations, September 2009. Keynote address at International Conference on Functional Programming (ICFP). [ bib | slides ]
J. Nathan Foster, Benjamin C. Pierce, and Steve Zdancewic. Updatable Security Views. In IEEE Computer Security Foundations Symposium (CSF), Port Jefferson, NY, July 2009. [ bib | conference version ]
Benjamin C. Pierce. Foundations for Bidirectional Programming, or: How To Build a Bidirectional Programming Language, June 2009. Keynote address at International Conference on Model Transformation (ICMT). [ bib | slides ]
Véronique Benzaken, Giuseppe Castagna, Haruo Hosoya, Benjamin C. Pierce, and Stijn Vansummeren. XML Typechecking. In Encyclopedia of Database Systems. Springer, 2009. To appear. [ bib ]
Benjamin C. Pierce, editor. Principles of Programming Languages (POPL). ACM Press, 2009. [ bib ]
Benjamin C. Pierce. POPL 2009 PC Chair's Report, January 2009. [ bib | slides ]
Aaron Bohannon, Benjamin C. Pierce, Vilhelm Sjöberg, Stephanie Weirich, and Steve Zdancewic. Reactive Noninterference. In CCS '09: Proceedings of the 16th ACM conference on Computer and communications security, pages 79-90, New York, NY, USA, 2009. ACM. [ bib | DOI | DOI ]
J. Nathan Foster, Alexandre Pilkiewicz, and Benjamin C. Pierce. Quotient Lenses. In ACM SIGPLAN International Conference on Functional Programming (ICFP), Victoria, Canada, September 2008. [ bib | short version ]
Benjamin C. Pierce. Types Considered Harmful, May 2008. Invited talk at Mathematical Foundations of Programming Semantics (MFPS). [ bib | slides ]
Benjamin C. Pierce. Using a Proof Assistant to Teach Programming Language Foundations, or, Lambda, the Ultimate TA, April 2008. White paper. [ bib | short version ]
Brian Aydemir, Arthur Charguéraud, Benjamin C. Pierce, Randy Pollack, and Stephanie Weirich. Engineering formal metatheory. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), San Francisco, California, pages 3-15. ACM, January 2008. [ bib | short version ]
Aaron Bohannon, J. Nathan Foster, Benjamin C. Pierce, Alexandre Pilkiewicz, and Alan Schmitt. Boomerang: Resourceful Lenses for String Data. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), San Francisco, California, January 2008. [ bib | tech report | short version ]
Sanjeev Khanna, Keshav Kunal, and Benjamin C. Pierce. A Formal Investigation of Diff3. In Arvind and Prasad, editors, Foundations of Software Technology and Theoretical Computer Science (FSTTCS), December 2007. [ bib | short version ]
Benjamin C. Pierce. Adventures in Bi-Directional Programming, December 2007. FSTTCS invited talk. [ bib | slides ]
J. Nathan Foster, Michael B. Greenwald, Jonathan T. Moore, Benjamin C. Pierce, and Alan Schmitt. Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem. ACM Transactions on Programming Languages and Systems, 29(3):17, May 2007. Preliminary version presented at the Workshop on Programming Language Technologies for XML (PLAN-X), 2004; extended abstract presented at Principles of Programming Languages (POPL), 2005. [ bib | DOI | electronic appendix | DOI | conference version | full version | slides ]
J. Nathan Foster, Michael B. Greenwald, Christian Kirkegaard, Benjamin C. Pierce, and Alan Schmitt. Exploiting Schemas in Data Synchronization. Journal of Computer and System Sciences, 73(4):669-689, 2007. Extended abstract in Database Programming Languages (DBPL) 2005. [ bib | tech report | short version | full version | slides ]
Karl Crary, Robert Harper, Frank Pfenning, Benjamin C. Pierce, Stephanie Weirich, and Stephan Zdancewic. Manifest Security. White paper, January 2007. [ bib | .pdf ]
J. Nathan Foster, Benjamin C. Pierce, and Alan Schmitt. A Logic Your Typechecker Can Count On: Unordered Tree Types in Practice. In Workshop on Programming Language Technologies for XML (PLAN-X), informal proceedings, January 2007. [ bib | conference version | slides ]
Andrew J. Kennedy and Benjamin C. Pierce. On Decidability of Nominal Subtyping with Variance, September 2006. FOOL-WOOD '07. [ bib | short version ]
Benjamin C. Pierce. The Weird World of Bi-Directional Programming, March 2006. ETAPS invited talk. [ bib | slides ]
Aaron Bohannon, Jeffrey A. Vaughan, and Benjamin C. Pierce. Relational Lenses: A Language for Updateable Views. In Principles of Database Systems (PODS), 2006. Extended version available as University of Pennsylvania technical report MS-CIS-05-27. [ bib | tech report | .pdf ]
Michael B. Greenwald, Sanjeev Khanna, Keshav Kunal, Benjamin C. Pierce, and Alan Schmitt. Agreeing to Agree: Conflict Resolution for Optimistically Replicated Data. In Shlomi Dolev, editor, International Symposium on Distributed Computing (DISC), 2006. [ bib | tech report | short version | slides ]
Vladimir Gapeyev, François Garillot, and Benjamin C. Pierce. Statically Typed Document Transformation: An Xtatic Experience. In Workshop on Programming Language Technologies for XML (PLAN-X), informal proceedings, January 2006. Available from the Xtatic web site. [ bib | tech report | .pdf ]
Aaron Bohannon, Jeffrey A. Vaughan, and Benjamin C. Pierce. Relational Lenses: A language for defining updateable views, October 2005. Poster presented at Greater Philadelphia DB/IR Day. [ bib | .pdf ]
Brian E. Aydemir, Aaron Bohannon, Matthew Fairbairn, J. Nathan Foster, Benjamin C. Pierce, Peter Sewell, Dimitrios Vytiniotis, Geoffrey Washburn, Stephanie Weirich, and Steve Zdancewic. Mechanized metatheory for the masses: The POPLmark Challenge. In International Conference on Theorem Proving in Higher Order Logics (TPHOLs), August 2005. [ bib | .ps | .pdf ]
Michael Y. Levin and Benjamin C. Pierce. Type-based Optimization for Regular Patterns. In Database Programming Languages (DBPL), August 2005. [ bib | tech report ]
Benjamin C. Pierce. Fancy Types for XML: Friend or Foe?, April 2005. Talk at LINKS workshop, April 2005. [ bib | slides ]
Benjamin C. Pierce. Harmony: The Art of Reconciliation, April 2005. Invited talk at Trusted Global Computing conference, April 2005. [ bib | slides ]
Vladimir Gapeyev, Michael Y. Levin, Benjamin C. Pierce, and Alan Schmitt. XML Goes Native: Run-time Representations for Xtatic. In 14th International Conference on Compiler Construction, April 2005. [ bib | tech report | conference version ]
J. Nathan Foster, Michael B. Greenwald, Christian Kirkegaard, Benjamin C. Pierce, and Alan Schmitt. Schema-Directed Data Synchronization. Technical Report MS-CIS-05-02, University of Pennsylvania, March 2005. Supersedes MS-CIS-03-42. [ bib | tech report ]
Haruo Hosoya, Jérôme Vouillon, and Benjamin C. Pierce. Regular Expression Types for XML. ACM Transactions on Programming Languages and Systems (TOPLAS), 27(1):46-90, January 2005. Preliminary version in ICFP 2000. [ bib | conference version | full version ]
Vladimir Gapeyev, Michael Y. Levin, Benjamin C. Pierce, and Alan Schmitt. The Xtatic Compiler and Runtime System, 2005. [ bib | source code ]
Michael Y. Levin. Run, Xtatic, Run: Efficient Implementation of an Object-Oriented Language with Regular Pattern Matching. PhD thesis, University of Pennsylvania, 2005. [ bib | .pdf ]
Benjamin C. Pierce, editor. Advanced Topics in Types and Programming Languages. MIT Press, 2005. [ bib | home page ]
Eijiro Sumii and Benjamin C. Pierce. A Bisimulation for Type Abstraction and Recursion. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Long Beach, California, 2005. Full version in J. ACM, 54 (5), 2007. [ bib | short version | full version ]
Vladimir Gapeyev, Michael Y. Levin, Benjamin C. Pierce, and Alan Schmitt. The Xtatic Experience. In Workshop on Programming Language Technologies for XML (PLAN-X), January 2005. University of Pennsylvania Technical Report MS-CIS-04-24, Oct 2004. [ bib | tech report | slides ]
Benjamin C. Pierce, editor. International Conference on Functional Programming (ICFP). ACM Press, 2005. [ bib ]
Benjamin C. Pierce. Combinators for Bi-Directional Tree Transformations: A Linguistic Approach to the View Update Problem, October 2004. Invited talk at New England Programming Languages Symposium. [ bib | slides ]
Vladimir Gapeyev and Benjamin C. Pierce. Paths into Patterns. Technical Report MS-CIS-04-25, University of Pennsylvania, October 2004. [ bib | tech report ]
Benjamin C. Pierce and Jérôme Vouillon. What's in Unison? A Formal Specification and Reference Implementation of a File Synchronizer. Technical Report MS-CIS-03-36, Dept. of Computer and Information Science, University of Pennsylvania, 2004. [ bib | tech report ]
Eijiro Sumii and Benjamin C. Pierce. A Bisimulation for Dynamic Sealing. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Venice, Italy, 2004. Full version in Theoretical Computer Science 375 (2007), 169-192. [ bib | conference version ]
Benjamin C. Pierce. Harmony: A Synchronization Framework for Tree-Structured Data, September 2003. Slides from a talk presented in several places (Cambridge, Edinburgh, Philadelphia, Princeton) in Fall 2003. [ bib | slides ]
Haruo Hosoya and Benjamin C. Pierce. XDuce: A Statically Typed XML Processing Language. ACM Transactions on Internet Technology, 3(2):117-148, May 2003. [ bib | official version ]
Michael Y. Levin and Benjamin C. Pierce. TinkerType: A Language for Playing with Formal Systems. Journal of Functional Programming, 13(2), March 2003. A preliminary version appeared as an invited paper at the Logical Frameworks and Metalanguages Workshop (LFM), June 2000. [ bib | source code | full version | slides ]
Benjamin C. Pierce. Types and Programming Languages: The Next Generation, 2003. Invited tutorial at Logic in Computer Science (LICS). [ bib | slides ]
Vladimir Gapeyev, Michael Levin, and Benjamin Pierce. Recursive Subtyping Revealed. Journal of Functional Programming, 12(6):511-548, 2003. Preliminary version in International Conference on Functional Programming (ICFP), 2000. Also appears as Chapter 21 of Types and Programming Languages by Benjamin C. Pierce (MIT Press, 2002). [ bib | conference version ]
Trevor Jim, Benjamin C. Pierce, and Jérôme Vouillon. How to Build a File Synchronizer. Manuscript, 2003. [ bib ]
Eijiro Sumii and Benjamin C. Pierce. Logical Relations for Encryption. Journal of Computer Security, 11(4):521-554, 2003. Extended abstract appeared in ph14th IEEE Computer Security Foundations Workshop, pp. 256-269, 2001. [ bib | conference version ]
Vladimir Gapeyev and Benjamin C. Pierce. Regular Object Types. In European Conference on Object-Oriented Programming (ECOOP), Darmstadt, Germany, 2003. A preliminary version was presented at FOOL '03. [ bib | short version | slides ]
M. Okada, B. Pierce, A. Scedrov, H. Tokuda, and A. Yonezawa, editors. Software Security - Theories and Systems, number 2609 in Lecture Notes in Computer Science. Springer-Verlag, 2003. Revised papers from the Mext-NSF-JSPS International Symposium on Software Security, Tokyo, Japan, November 8-10, 2002. [ bib ]
Michael B. Greenwald, Jonathan T. Moore, Benjamin C. Pierce, and Alan Schmitt. A Language for Bi-Directional Tree Transformations. Technical Report MS-CIS-03-08, University of Pennsylvania, 2003. Revised April 2004. [ bib ]
Benjamin C. Pierce, Alan Schmitt, and Michael B. Greenwald. Bringing Harmony to Optimism: A Synchronization Framework for Heterogeneous Tree-Structured Data. Technical Report MS-CIS-03-42, University of Pennsylvania, 2003. Superseded by MS-CIS-05-02. [ bib | tech report ]
Michael B. Greenwald, Jonathan T. Moore, Benjamin C. Pierce, and Alan Schmitt. A Language for Bi-Directional Tree Transformations. Manuscript; available at http://www.cis.upenn.edu/~bcpierce/papers/lenses.pdf, 2003. [ bib ]
Atsushi Igarashi and Benjamin C. Pierce. On Inner Classes. Information and Computation, 177(1):56-89, August 2002. A special issue with papers from the 7th International Workshop on Foundations of Object-Oriented Languages (FOOL), informal proceedings. An earlier version appeared in \bgroup Proceedings of the 14th European Conference on Object-Oriented Programming (ECOOP), Springer LNCS 1850, pages 129-153. [ bib | tech report | conference version ]
Benjamin C. Pierce. Synchronize globally, compute locally, July 2002. Keynote address at Research Day on Global Computing, EFPL, Lausanne. [ bib | slides ]
Benjamin C. Pierce. Types and Programming Languages. MIT Press, 2002. [ bib | errata | home page ]
Benjamin C. Pierce and David N. Turner. The Pict Programming Language, 2001. This directory contains various papers, including a tutorial and user's manual, as well as complete compiler sources and installation instructions. (Be sure not to miss the artwork department!). [ bib | home page ]
Benjamin C. Pierce. Global Computing: Some Questions for FOOLs, 2001. Invited talk at FOOL workshop. [ bib | slides ]
Benjamin C. Pierce. File Synchronization: Theory and Practice, 2001. [ bib | slides ]
Benjamin C. Pierce. Unison: A file synchronizer and its specification, 2001. Invited talk at Theoretical Aspects of Computer Software (TACS), Sendai, Japan. [ bib | slides ]
Atsushi Igarashi, Benjamin C. Pierce, and Philip Wadler. A Recipe for Raw Types. In Workshop on Foundations of Object-Oriented Languages (FOOL), 2001. [ bib | short version ]
Haruo Hosoya and Benjamin C. Pierce. Regular Expression Pattern Matching. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), London, England, 2001. Full version in Journal of Functional Programming, 13(6), Nov. 2003, pp. 961-1004. [ bib | full version ]
Eijiro Sumii and Benjamin Pierce. The Cryptographic λ-Calculus: Syntax, Semantics, Type System and Logical Relation (in Japanese). In Informal Proceedings of JSSST Workshop on Programming and Programming Languages (PPL2001), 2001. Best paper prize. [ bib ]
Benjamin C. Pierce and Jérôme Vouillon. Unison: A File Synchronizer and its Specification. Manuscript, 2001. [ bib ]
Naoki Kobayashi and Benjamin C. Pierce, editors. Theoretical Aspects of Computer Software (TACS), 4th International Symposium, number 2215 in Lecture Notes in Computer Science. Springer-Verlag, 2001. [ bib ]
Benjamin C. Pierce. Module Systems: A Guide for the Perplexed, September 2000. Invited talk at ICFP, Montreal. [ bib ]
Benjamin Pierce and Eijiro Sumii. Relating Cryptography and Polymorphism, July 2000. Some parts superseded by [61]. [ bib | manuscript ]
Michael Y. Levin and Benjamin C. Pierce. TinkerType: A Language for Playing with Formal Systems. Technical report, June 2000. Invited talk (submitted for journal publication). [ bib ]
Haruo Hosoya and Benjamin C. Pierce. XDuce: A Typed XML Processing Language (Preliminary Report). In Dan Suciu and Gottfried Vossen, editors, International Workshop on the Web and Databases (WebDB), May 2000. Reprinted in The Web and Databases, Selected Papers, Springer LNCS volume 1997, 2001. [ bib | conference version ]
Arnaud Sahuguet, Benjamin Pierce, and Val Tannen. Chaining, Referral, Subscription, Leasing: New Mechanisms in Distributed Query Optimization, February 2000. [ bib ]
Arnaud Sahuguet, Benjamin Pierce, and Val Tannen. Distributed Query Optimization: Can Mobile Agents Help?, February 2000. [ bib ]
Benjamin C. Pierce. Advanced Module Systems: A Guide for the Perplexed, 2000. Invited tutorial at International Conference on Functional Programming (ICFP). [ bib | slides ]
Peter Sewell, Pawel T. Wojciechowski, and Benjamin C. Pierce. Location Independence for Mobile Agents. 2000. To appear in an edited collection of papers (in Springer LNCS) from the Workshop on Internet Programming Languages, June 1998, Loyola University. [ bib ]
Benjamin C. Pierce and David N. Turner. Pict: A Programming Language Based on the Pi-Calculus. In Gordon Plotkin, Colin Stirling, and Mads Tofte, editors, Proof, Language and Interaction: Essays in Honour of Robin Milner, pages 455-494. MIT Press, 2000. [ bib | full version ]
Vladimir Gapeyev, Michael Levin, and Benjamin Pierce. Recursive Subtyping Revealed. In ACM SIGPLAN International Conference on Functional Programming (ICFP), Montreal, Canada, 2000. To appear in Journal of Functional Programming. [ bib ]
Kim B. Bruce, Luca Cardelli, and Benjamin C. Pierce. Comparing Object Encodings. Information and Computation, 155(1/2):108-133, November 1999. Special issue of papers from Theoretical Aspects of Computer Software (TACS 1997). An earlier version appeared as an invited lecture in the Third International Workshop on Foundations of Object Oriented Languages (FOOL 3), July 1996. [ bib | .ps ]
Atsushi Igarashi, Benjamin Pierce, and Philip Wadler. Featherweight Java: A Minimal Core Calculus for Java and GJ. In ACM SIGPLAN Conference on Object Oriented Programming: Systems, Languages, and Applications (OOPSLA), October 1999. Full version in ACM Transactions on Programming Languages and Systems (TOPLAS), 23(3), May 2001. [ bib | conference version | full version ]
Naoki Kobayashi, Benjamin C. Pierce, and David N. Turner. Linearity and the Pi-Calculus. ACM Transactions on Programming Languages and Systems, 21(5):914-947, September 1999. Summary in POPL 1996. [ bib | full version ]
Peter Sewell, Pawel Wojciechowski, and Benjamin Pierce. Location Independence for Mobile Agents. In H. E. Bal, B. Belkhouche, and L. Cardelli, editors, Proceedings of ICCL '98, volume 1686 of lncs. Springer-Verlag, September 1999. An earlier version with title Location-Independent Communication for Mobile Agents: a Two-Level Architecture appeared as Technical Report 462, Computer Laboratory, University of Cambridge, April 1999. [ bib | tech report | official version ]
Atsushi Igarashi and Benjamin C. Pierce. Foundations for Virtual Types. In European Conference on Object-Oriented Programming (ECOOP), Lisbon, Portugal, June 1999. Also in informal proceedings of the Workshop on Foundations of Object-Oriented Languages (FOOL), January 1999. Full version in Information and Computation, 175(1): 34-49, May 2002. [ bib | .ps ]
Haruo Hosoya and Benjamin C. Pierce. How Good is Local Type Inference? Technical Report MS-CIS-99-17, University of Pennsylvania, June 1999. [ bib | tech report ]
Peter Sewell, Pawel T. Wojciechowski, and Benjamin C. Pierce. Location-Independent Communication for Mobile Agents: a Two-Level Architecture. Technical Report 462, Computer Laboratory, University of Cambridge, 1999. [ bib ]
S. Balasubramaniam and Benjamin C. Pierce. What is a file synchronizer? In Fourth Annual ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom '98), October 1998. Full version available as Indiana University CSCI technical report #507, April 1998. [ bib | tech report | conference version | slides ]
Benjamin C. Pierce. Type Systems for Concurrent Calculi, September 1998. Invited tutorial at CONCUR, Nice, France. [ bib ]
Peter Buneman and Benjamin Pierce. Union Types for Semistructured Data. In Internet Programming Languages. Springer-Verlag, September 1998. Proceedings of the International Database Programming Languages Workshop. LNCS 1686. [ bib | conference version ]
S. Balasubramaniam and Benjamin C. Pierce. File Synchronization. Technical Report 507, Computer Science Department, Indiana University, April 1998. [ bib ]
Giorgio Ghelli and Benjamin Pierce. Bounded Existentials and Minimal Typing. Theoretical Computer Science, 193:75-96, 1998. Circulated in manuscript form in 1992. [ bib ]
Benjamin C. Pierce and David N. Turner. Local Type Inference. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), San Diego, California, 1998. Full version in ACM Transactions on Programming Languages and Systems (TOPLAS), 22(1), January 2000, pp. 1-44. [ bib | tech report | conference version | full version ]
Martin Hofmann and Benjamin C. Pierce. Type Destructors. In Didier Rémy, editor, Informal proceedings of the Fourth International Workshop on Foundations of Object-Oriented Languages (FOOL), January 1998. Full version in Information and Computation, 172(1)29-62 (2002). [ bib | conference version ]
Benjamin C. Pierce. Type Systems for Concurrent Calculi, 1998. Invited tutorial at CONCUR. [ bib | slides ]
Benjamin C. Pierce, Trevor Jim Sundar Balasubramaniam, Insup Lee, and Insik Shin. Snc: a file synchronizer, 1998. (Superseded by Unison.). [ bib ]
Haruo Hosoya, Benjamin C. Pierce, and David N. Turner. Datatypes and Subtyping. Manuscript, 1998. [ bib | .ps ]
Benjamin C. Pierce. Languages for Programming the Web, December 1997. Course materials for a graduate seminar on the theory and practice of mobile agent programming. Available through http://www.cis.upenn.edu/simbcpierce/courses/629. [ bib ]
Kim B. Bruce, Luca Cardelli, and Benjamin C. Pierce. Comparing Object Encodings. In International Symposium on Theoretical Aspects of Computer Software (TACS), September 1997. An earlier version was presented as an invited lecture at the Third International Workshop on Foundations of Object Oriented Languages (FOOL 3), July 1996; full version in Information and Computation, 155(1-2):108-133, 1999. [ bib ]
Benjamin C. Pierce. Intersection Types and Bounded Polymorphism. Mathematical Structures in Computer Science, 7(2):129-193, April 1997. Summary in Typed Lambda Calculi and Applications, March 1993, pp. 346-360. [ bib ]
Benjamin Pierce and Davide Sangiorgi. Behavioral Equivalence in the Polymorphic Pi-Calculus. In Principles of Programming Languages (POPL), pages 531-584, 1997. Full version in Journal of the Association for Computing Machinery (JACM), 47(3), May 2000. [ bib | full version ]
Benjamin C. Pierce. Bounded Quantification with Bottom. Technical Report 492, Computer Science Department, Indiana University, 1997. [ bib | tech report ]
Benjamin Pierce and Martin Steffen. Higher-Order Subtyping. Theoretical Computer Science, 176(1-2):235-282, 1997. Summary in IFIP Working Conference on Programming Concepts, Methods and Calculi (PROCOMET), June 1994; also University of Edinburgh technical report ECS-LFCS-94-280 and Universität Erlangen-Nürnberg Interner Bericht IMMD7-01/94, January 1994. [ bib ]
Benjamin C. Pierce and David N. Turner. Local Type Argument Synthesis with Bounded Quantification. Technical Report 495, Computer Science Department, Indiana University, January 1997. [ bib | tech report ]
Benjamin C. Pierce and David N. Turner. Local Type Inference. Technical Report 493, Computer Science Department, Indiana University, 1997. [ bib ]
Benjamin C. Pierce and David N. Turner. Pict Language Definition. Available electronically, 1997. [ bib ]
Benjamin C. Pierce and David N. Turner. Pict Libraries Manual. Available electronically, 1997. [ bib ]
Benjamin C. Pierce and David N. Turner. Pict: A Programming Language Based on the Pi-Calculus, 1997. http://www.cis.upenn.edu/ bcpierce/papers/pict. [ bib ]
Benjamin C. Pierce. Programming in the Pi-Calculus: A Tutorial Introduction to Pict. Available electronically, 1997. [ bib ]
Benjamin C. Pierce. Review of A Theory of Objects, by Abadi and Cardelli. The Computer Journal, 40(5):297-298, 1997. [ bib | .ps ]
Adriana B. Compagnoni and Benjamin C. Pierce. Intersection Types and Multiple Inheritance. Mathematical Structures in Computer Science, 6(5):469-501, October 1996. Preliminary version available as University of Edinburgh technical report ECS-LFCS-93-275 and Catholic University Nijmegen computer science technical report 93-18, Aug. 1993, under the title “Multiple Inheritance via Intersection Types”. [ bib ]
Uwe Nestmann and Benjamin C. Pierce. Decoding Choice Encodings. In Proceedings of CONCUR '96, August 1996. Full version in Information and Computation, 163(1): 1-59 (2000). [ bib | full version ]
Kim B. Bruce, Luca Cardelli, and Benjamin C. Pierce. Comparing Object Encodings. In Invited lecture at Third Workshop on Foundations of Object Oriented Languages (FOOL 3), July 1996. [ bib ]
Benjamin C. Pierce. Even simpler type-theoretic foundations for OOP. Manuscript (circulated electronically), March 1996. [ bib ]
Benjamin C. Pierce. Processes, Types, and Observations, March 1996. Invited lecture at Formal Methods on Open, Object-Based Distributed Systems (FMOODS), Paris. [ bib ]
Benjamin C. Pierce. Types. Lecture notes for an undergraduate course at Cambridge University, February 1996. [ bib ]
Benjamin C. Pierce. Foundational Calculi for Programming Languages. In Allen B. Tucker, editor, Handbook of Computer Science and Engineering, chapter 139. CRC Press, 1996. [ bib | full version ]
Naoki Kobayashi, Benjamin C. Pierce, and David N. Turner. Linearity and the Pi-Calculus. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), St. Petersburg Beach, Florida, 1996. Full version in ACM Transactions on Programming Languages and Systems, 21(5), pp. 914-947, September 1999. [ bib ]
Adriana B. Compagnoni and Benjamin C. Pierce. Multiple Inheritance via Intersection Types. Mathematical Structures in Computer Science, 1996. To appear. Preliminary version available as University of Edinburgh technical report ECS-LFCS-93-275 and Catholic University Nijmegen computer science technical report 93-18, Aug. 1993. [ bib ]
Kim B. Bruce, Luca Cardelli, Giuseppe Castagna, the Hopkins Objects Group (Jonathan Eifrig, Scott Smith, Valery Trifonov), Gary T. Leavens, and Benjamin Pierce. On Binary Methods. Theory and Practice of Object Systems, 1(3):221-242, 1996. [ bib | .ps ]
Martin Hofmann and Benjamin Pierce. A Unifying Type-Theoretic Framework for Objects. Journal of Functional Programming, 5(4):593-635, October 1995. Previous versions appeared in the Symposium on Theoretical Aspects of Computer Science, 1994, (pages 251-262) and, under the title “An Abstract View of Objects and Subtyping (Preliminary Report),” as University of Edinburgh, LFCS technical report ECS-LFCS-92-226, 1992. [ bib | .ps ]
Benjamin C. Pierce. Using Types to Compare Objects and ADTs, October 1995. Invited lecture at Horizon Day, Indiana University. [ bib ]
Benjamin C. Pierce. Linearity and the Pi-Calculus, August 1995. Invited lecture at Advances in Type Systems for Computation, Cambridge, England. [ bib ]
Benjamin C. Pierce and David N. Turner. Concurrent Objects in a Process Calculus. In Takayasu Ito and Akinori Yonezawa, editors, Theory and Practice of Parallel Programming (TPPP), Sendai, Japan (Nov. 1994), number 907 in Lecture Notes in Computer Science, pages 187-215. Springer-Verlag, April 1995. [ bib | short version | .ps ]
Giuseppe Castagna and Benjamin Pierce. Corrigendum: Decidable Bounded Quantification. In Proceedings of the Twenty-Second ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Portland, Oregon. ACM, January 1995. [ bib | .ps ]
Martín Abadi, Luca Cardelli, Benjamin Pierce, and Didier Rémy. Dynamic Typing in Polymorphic Languages. Journal of Functional Programming, 5(1):111-130, January 1995. Summary in ACM SIGPLAN Workshop on ML and its Applications, June 1992. [ bib ]
Naoki Kobayashi, Benjamin C. Pierce, and David N. Turner. Linearity and the Pi-Calculus, 1995. Technical report, Department of Information Science, University of Tokyo and Computer Laboratory, University of Cambridge. [ bib ]
Martin Hofmann and Benjamin Pierce. Positive Subtyping. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), San Francisco, California, pages 186-197, January 1995. Full version in Information and Computation, volume 126, number 1, April 1996. Also available as University of Edinburgh technical report ECS-LFCS-94-303, September 1994. [ bib | .ps ]
Benjamin C. Pierce. Concurrent Objects in a Process Calculus, November 1994. Invited lecture at Theory and Practice of Parallel Programming (TPPP), Sendai, Japan. [ bib ]
Martin Hofmann and Benjamin Pierce. Positive Subtyping. Technical Report ECS-LFCS-94-303, LFCS, University of Edinburgh, September 1994. [ bib ]
Benjamin C. Pierce. Bounded Quantification is Undecidable. Information and Computation, 112(1):131-165, July 1994. Also in C. A. Gunter and J. C. Mitchell, editors, Theoretical Aspects of Object-Oriented Programming: Types, Semantics, and Language Design, MIT Press, 1994. Summary in ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Albuquerque, New Mexico. [ bib | conference version ]
Benjamin C. Pierce and David N. Turner. Simple Type-Theoretic Foundations for Object-Oriented Programming. Journal of Functional Programming, 4(2):207-247, April 1994. Summary in ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Charleston, South Carolina, 1993. [ bib | conference version | .ps | .pdf ]
Giuseppe Castagna and Benjamin Pierce. Decidable Bounded Quantification. In Proceedings of the Twenty-First ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Portland, Oregon. ACM, January 1994. [ bib | .ps ]
Benjamin C. Pierce and Martin Steffen. Higher-Order Subtyping. In IFIP Working Conference on Programming Concepts, Methods and Calculi (PROCOMET), 1994. Full version in Theoretical Computer Science, vol. 176, no. 1-2, pp.235-282, 1997 (corrigendum in TCS vol. 184 (1997), p. 247). [ bib | tech report ]
Martin Steffen and Benjamin Pierce. Higher-Order Subtyping. Technical Report ECS-LFCS-94-280, LFCS, University of Edinburgh, January 1994. Also available as Universität Erlangen-Nürnberg Interner Bericht IMMD7-01/94. To appear in Theoretical Computer Science. [ bib ]
Benjamin C. Pierce. Woggles from Oz: Writing Interactive Fiction. Leonardo: Journal of the International Society for the Arts, Sciences, and Technology, 1994. Expanded version available electronically. [ bib ]
Benjamin C. Pierce. A Typed Higher-Order Programming Language Based on the Pi-Calculus, July 1993. Invited lecture at Workshop on Type Theory and its Application to Computer Systems, Kyoto University. [ bib ]
Benjamin C. Pierce, Didier Rémy, and David N. Turner. A Typed Higher-Order Programming Language Based on the Pi-Calculus. In Workshop on Type Theory and its Application to Computer Systems, Kyoto University, July 1993. [ bib ]
Benjamin C. Pierce. Mutable Objects. Draft report; available electronically, June 1993. [ bib | .ps ]
Benjamin C. Pierce. A Model of Delegation Based on Existential Types. Available electronically, April 1993. [ bib | .ps ]
Benjamin Pierce. Object-Oriented Programming in Typed Lambda-Calculus: Exercises and Solutions. Lecture notes for 1992 Frankische OOrientierungstage, University of Erlangen, Germany (revised version), April 1993. [ bib ]
Benjamin C. Pierce and David N. Turner. Statically Typed Friendly Functions via Partially Abstract Types. Technical Report ECS-LFCS-93-256, University of Edinburgh, LFCS, April 1993. Also available as INRIA-Rocquencourt Rapport de Recherche No. 1899. [ bib | .ps ]
Benjamin C. Pierce. F-Omega-Sub User's Manual, Version 1.4. Available by FTP as part of the fomega implementation, February 1993. [ bib ]
Benjamin C. Pierce. Typage des Traits Orientés-Objets, February 1993. Invited lecture at Journeés Francophones des Langages Applicatifs, Annecy, France. [ bib ]
Benjamin C. Pierce and David N. Turner. Object-Oriented Programming Without Recursive Types. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Charleston, South Carolina, pages 299-312, January 1993. [ bib ]
Benjamin C. Pierce and Davide Sangiorgi. Typing and Subtyping for Mobile Processes. In Logic in Computer Science, 1993. Full version in Mathematical Structures in Computer Science , Vol.6, No.5, 1996. [ bib | full version ]
Benjamin C. Pierce. F-Omega-Sub: a polymorphic λ-calculus with higher-order subtyping and object-oriented extensions, 1993. [ bib ]
Benjamin C. Pierce and Robert Pollack. Higher-Order Subtyping. Unpublished manuscript, August 1992. [ bib ]
Martin Hofmann and Benjamin Pierce. An Abstract View of Objects and Subtyping (Preliminary Report). Technical Report ECS-LFCS-92-226, University of Edinburgh, LFCS, 1992. [ bib ]
Giorgio Ghelli and Benjamin Pierce. Bounded Existentials and Minimal Typing, 1992. Circulated in manuscript form. Full version in Theoretical Computer Science, 193(1-2):75-96, February 1998. [ bib | .ps ]
Benjamin C. Pierce. Programming with Intersection Types and Bounded Polymorphism. PhD thesis, Carnegie Mellon University, December 1991. Available as School of Computer Science technical report CMU-CS-91-205. [ bib ]
Martín Abadi, Luca Cardelli, Benjamin Pierce, and Gordon Plotkin. Dynamic Typing in a Statically Typed Language. ACM Transactions on Programming Languages and Systems, 13(2):237-268, April 1991. Summary in ACM Symposium on Principles of Programming Languages (POPL), Austin, Texas, 1989. [ bib ]
Martín Abadi, Benjamin Pierce, and Gordon Plotkin. Faithful Ideal Models for Recursive Polymorphic Types. International Journal of Foundations of Computer Science, 2(1):1-21, March 1991. Summary in Fourth Annual Symposium on Logic in Computer Science, June, 1989. [ bib ]
Benjamin C. Pierce. Programming with Intersection Types, Union Types, and Polymorphism. Technical Report CMU-CS-91-106, Carnegie Mellon University, February 1991. [ bib ]
Robert Harper and Benjamin Pierce. A Record Calculus Based on Symmetric Concatenation. In ACM Symposium on Principles of Programming Languages (POPL), Orlando, Florida, pages 131-142, January 1991. Extended version available as Carnegie Mellon Technical Report CMU-CS-90-157. [ bib ]
Benjamin C. Pierce. Basic Category Theory for Computer Scientists. MIT Press, 1991. [ bib ]
Benjamin C. Pierce. Fmeet: a polymorphic λ-calculus with intersection types, 1991. [ bib ]
Benjamin C. Pierce. Preliminary Investigation of a Calculus with Intersection and Union Types. Unpublished manuscript, June 1990. [ bib ]
Robert W. Harper and Benjamin C. Pierce. Extensible Records Without Subsumption. Technical Report CMU-CS-90-102, School of Computer Science, Carnegie Mellon University, February 1990. [ bib ]
Benjamin Pierce. A Decision Procedure for the Subtype Relation on Intersection Types with Bounded Variables. Technical Report CMU-CS-89-169, School of Computer Science, Carnegie Mellon University, September 1989. [ bib ]
Benjamin Pierce. Bounded Quantification and Intersection Types. Thesis proposal (unpublished), September 1989. [ bib ]
Benjamin Pierce, Scott Dietzen, and Spiro Michaylov. Programming in Higher-order Typed Lambda-Calculi. Technical Report CMU-CS-89-111, Carnegie Mellon University, March 1989. [ bib | errata | tech report ]
A. N. Habermann, Charles Krueger, Benjamin Pierce, Barbara Staudt, and John Wenn. Programming with Views. Technical Report CMU-CS-87-177, Carnegie Mellon University, Computer Science Department, January 1988. [ bib ]
Benjamin C. Pierce. Artemis: a graphics editor for circuit diagrams, 1986. Used internally at DEC Western Research Lab for the design of the Titan processor and power/packaging. [ bib ]
T. Larrabee, K. McCall, C. Mitchell, and B. C. Pierce. Gambit: A Video Game Programming Language. Project report for Stanford CS-242 (Programming Language Design), December 1982. See also: Larrabee, T. and Mitchell, C. “Gambit: A Prototyping Approach to Video Game Design.” IEEE Software, Vol. 1 No. 4, Oct. 1984. [ bib ]
B. C. Pierce. Gridapple: A Microcomputer-Based Geographic Information System. In Harvard Computer Graphics Week, July 1982. Reprinted in Marble, D., et al, Basic Readings in Geographic Information Systems. Williamsville, NY: SPAD Systems, Ltd., 1984. [ bib ]
B. C. Pierce. A Microcomputer-Based Geographic Information System. In Proceedings of the Seventh West Coast Computer Faire, March 1982. [ bib ]
Benjamin C. Pierce. Arc-Info plotting and display subsystem, 1982. Marketed by Environmental Systems Research Institute, Redlands, CA, USA. [ bib ]
Benjamin C. Pierce. Gridapple: an implementation of the ESRI Grid system for the Apple-II, 1981. Marketed by Environmental Systems Research Institute, Redlands, CA. [ bib ]
Benjamin C. Pierce