[图书][B] Types and programming languages

BC Pierce - 2002 - books.google.com
A comprehensive introduction to type systems and programming languages. A type system
is a syntactic method for automatically checking the absence of certain erroneous behaviors …

[图书][B] Foundations of algebraic specification and formal software development

D Sannella - 2012 - Springer
As its title promises, this book provides foundations for software specification and formal
software development from the perspective of work on algebraic specification. It …

QED at large: A survey of engineering of formally verified software

T Ringer, K Palmskog, I Sergey… - … and Trends® in …, 2019 - nowpublishers.com
Abstract Development of formal proofs of correctness of programs can increase actual and
perceived reliability and facilitate better understanding of program specifications and their …

Refinement types for secure implementations

J Bengtson, K Bhargavan, C Fournet… - ACM Transactions on …, 2011 - dl.acm.org
We present the design and implementation of a typechecker for verifying security properties
of the source code of cryptographic protocols and access control mechanisms. The …

Type soundness proofs with definitional interpreters

N Amin, T Rompf - Proceedings of the 44th ACM SIGPLAN Symposium …, 2017 - dl.acm.org
While type soundness proofs are taught in every graduate PL class, the gap between
realistic languages and what is accessible to formal proofs is large. In the case of Scala, it …

Types and effects for asymmetric cryptographic protocols

AD Gordon, A Jeffrey - Journal of Computer Security, 2004 - content.iospress.com
We present the first type and effect system for proving authenticity properties of security
protocols based on asymmetric cryptography. The most significant new features of our type …

[HTML][HTML] Coercive subtyping: theory and implementation

Z Luo, S Soloviev, T Xue - Information and Computation, 2013 - Elsevier
Coercive subtyping is a useful and powerful framework of subtyping for type theories. The
key idea of coercive subtyping is subtyping as abbreviation. In this paper, we give a new and …

Label-dependent session types

P Thiemann, VT Vasconcelos - … of the ACM on Programming Languages, 2019 - dl.acm.org
Session types have emerged as a typing discipline for communication protocols. Existing
calculi with session types come equipped with many different primitives that combine …

Generics of a higher kind

A Moors, F Piessens, M Odersky - … of the 23rd ACM SIGPLAN conference …, 2008 - dl.acm.org
With Java 5 and C# 2.0, first-order parametric polymorphism was introduced in mainstream
object-oriented programming languages under the name of generics. Although the first …

Undecidability of d<: and its decidable fragments

JZS Hu, O Lhoták - Proceedings of the ACM on Programming …, 2019 - dl.acm.org
Dependent Object Types (DOT) is a calculus with path dependent types, intersection types,
and object self-references, which serves as the core calculus of Scala 3. Although the …