Types and programming languages: the next generation
By Benjamin C. Pierce. 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings., 2003
2,036 citations recorded by the source corpus.
Subfields: Artificial Intelligence, Software
View Paper: https://www.semanticscholar.org/paper/5a6dbe11f7bd7182ca008b0f94b75fe5cac57a08
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Arjun Guha
- Dawn Song
- Charles Sutton
- Baishakhi Ray
- Romain Robbes
- Jeffrey S. Foster
- Swarat Chaudhuri
- Premkumar T. Devanbu
In Software
- Charles Sutton
- Premkumar T. Devanbu
- Earl T. Barr
- Baishakhi Ray
- Jeffrey S. Foster
- Arjun Guha
- Miltiadis Allamanis
- Swarat Chaudhuri
Citations in the corpus
- Assessing the Type Annotation Burden (2018, background): “Type checking is one of the most successful and enduring approaches for ensuring desirable program properties [6, 29, 35, 39, 40].”
- A large scale study of programming languages and code quality in github (2014, methodology): “We categorize C++ as weakly typed because a memory region of a certain type can be treated differently using pointer manipulation [29].”
- An empirical study of the influence of static type systems on the usability of undocumented software (2012, background): “[4, 18]) have played an essential role in software education, research, and industry.”
- Strongly-Typed Recurrent Neural Networks (2016, methodology): “Language researchers stress the benefits of constraints: eliminating GOTO (Dijkstra, 1968); introducing type-systems that prescribe the interfaces between parts of computer programs and guarantee their consistency (Pierce, 2002); and working with stateless (pure) functions.”
- OptTyper: Probabilistic Type Inference by Optimising Logical and Natural Constraints (2020, background): “The classic literature on conventional type systems takes great care to demonstrate that type inference only suggests sound types [Milner 1978; Pierce 2002].”
- Bilby: A User-friendly Bayesian Inference Library for Gravitational-wave Astronomy (2018, background): “Wherever possible, we seek to mod-ularize the code and follow the abstraction principle [29], reducing the amount of repeated code and easing development.”
- HOUDINI: Lifelong Learning as Program Synthesis (2018, methodology): “Using programming language techniques [30], HOUDINI assigns a type to each program e whose subexpressions use types consistently (see supplementary material).”
- ABS: A Core Language for Abstract Behavioral Specification (2010, background): “For the remaining cases, we need that typing is preserved under type substitutions [30] and that well-typedness is preserved when σ is extended.”
- A Gradual Type System for Elixir (2020, methodology): “Subtyping Our type system is based on subtyping [14].”
- Typing Local Control and State Using Flow Analysis (2011, background): “2 This is a simple restriction of source and sink types [ 20, Chapter 15.5 ].”
- Mechanized Metatheory for the Masses: The PoplMark Challenge (2005, methodology): “Our presentation is based on Pierce’s Types and Programming Languages [43]; other good sources for background information are the seminal papers by Cardelli et al [5] and Curien and Ghelli [9].”
- Subtyping for session types in the pi calculus (2005, background): “Fig. 11 Algorithmic subtyping rules [ 26, Chapter 21 ].”
- Featherweight Java: a minimal core calculus for Java and GJ (2001, background): “For example, a call-by-value variant of FJ can be found in Pierce [2002].”