HOME

TheInfoList



OR:

Benjamin Crawford Pierce is the Henry Salvatori Professor of
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
at the
University of Pennsylvania The University of Pennsylvania (Penn or UPenn) is a Private university, private Ivy League research university in Philadelphia, Pennsylvania, United States. One of nine colonial colleges, it was chartered in 1755 through the efforts of f ...
. Pierce joined Penn in 1998 from
Indiana University Indiana University (IU) is a state university system, system of Public university, public universities in the U.S. state of Indiana. The system has two core campuses, five regional campuses, and two regional centers under the administration o ...
and held research positions at the
University of Cambridge The University of Cambridge is a Public university, public collegiate university, collegiate research university in Cambridge, England. Founded in 1209, the University of Cambridge is the List of oldest universities in continuous operation, wo ...
and the
University of Edinburgh The University of Edinburgh (, ; abbreviated as ''Edin.'' in Post-nominal letters, post-nominals) is a Public university, public research university based in Edinburgh, Scotland. Founded by the City of Edinburgh Council, town council under th ...
. He received his Ph.D. from
Carnegie Mellon University Carnegie Mellon University (CMU) is a private research university in Pittsburgh, Pennsylvania, United States. The institution was established in 1900 by Andrew Carnegie as the Carnegie Technical Schools. In 1912, it became the Carnegie Institu ...
in 1991. His research includes work on
programming language A programming language is a system of notation for writing computer programs. Programming languages are described in terms of their Syntax (programming languages), syntax (form) and semantics (computer science), semantics (meaning), usually def ...
s,
static type system In computer programming, a type system is a logical system comprising a set of rules that assigns a property called a type (computer science), ''type'' (for example, integer, floating point, String (computer science), string) to every ''term ( ...
s,
distributed programming Distributed computing is a field of computer science that studies distributed systems, defined as computer systems whose inter-communicating components are located on different networked computers. The components of a distributed system commu ...
,
mobile agent In computer science, a mobile agent is a piece of software agent combined with data that is able to migrate from one computer to another autonomously and continue its execution on the destination with the ability to interact with other agents ther ...
s, process calculi, and
differential privacy Differential privacy (DP) is a mathematically rigorous framework for releasing statistical information about datasets while protecting the privacy of individual data subjects. It enables a data holder to share aggregate patterns of the group while ...
. As part of his research, Pierce has led development on several
open-source software Open-source software (OSS) is Software, computer software that is released under a Open-source license, license in which the copyright holder grants users the rights to use, study, change, and Software distribution, distribute the software an ...
projects, including the Unison
file synchronization File synchronization (or syncing) in computing is the process of ensuring that computer files in two or more locations are updated via certain rules. In ''one-way file synchronization'', also called Web mirror, mirroring, updated files are copied ...
utility. In 2012 Pierce became an ACM Fellow for "contributions to the theory and practice of programming languages and their type systems". In 2015 Pierce and co-authors received the award for the most influential Principles of Programming Languages paper, which was described as "instrumental in bringing the view-update problem to the attention of the programming languages community and demonstrating the broad relevance of the problem beyond
databases In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and ana ...
. ..More broadly, the paper sparked a great deal of follow-on work in the area of BX (ā€œ
bidirectional transformation In computer programming, bidirectional transformations (bx) are programs in which a single piece of code can be run in several ways, such that the same data are sometimes considered as input, and sometimes as output. For example, a bx run in the f ...
sā€), leading to a fruitful collaboration between the worlds of databases, programming languages, and
software engineering Software engineering is a branch of both computer science and engineering focused on designing, developing, testing, and maintaining Application software, software applications. It involves applying engineering design process, engineering principl ...
."


Books

He is the author of one book on
type systems In computer programming, a type system is a logical system comprising a set of rules that assigns a property called a ''type'' (for example, integer, floating point, string) to every '' term'' (a word, phrase, or other set of symbols). Usual ...
, '' Types and Programming Languages'' . He has also edited a collection of articles to create a second volume ''Advanced Topics in Types and Programming Languages'' . Based on the notes he collected while learning
category theory Category theory is a general theory of mathematical structures and their relations. It was introduced by Samuel Eilenberg and Saunders Mac Lane in the middle of the 20th century in their foundational work on algebraic topology. Category theory ...
during his PhD, he also published an introductory book on this topic—''Basic Category Theory for Computer Scientists'', . He is one of the authors of the freely available boo
''Software Foundations''


See also

* POPLmark challenge


References


External links


Prof. Pierce's Homepage
* * American computer scientists Living people Programming language researchers Year of birth missing (living people) University of Pennsylvania faculty University of Pennsylvania Department of Computer and Information Science faculty {{compu-bio-stub