[图书][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 …

Gradual typing for objects

J Siek, W Taha - European Conference on Object-Oriented …, 2007 - Springer
Static and dynamic type systems have well-known strengths and weaknesses. In previous
work we developed a gradual type system for a functional calculus named λ^?_→. Gradual …

CCured: Type-safe retrofitting of legacy software

GC Necula, J Condit, M Harren, S McPeak… - ACM Transactions on …, 2005 - dl.acm.org
This article describes CCured, a program transformation system that adds type safety
guarantees to existing C programs. CCured attempts to verify statically that memory errors …

The design and implementation of Typed Scheme

S Tobin-Hochstadt, M Felleisen - ACM SIGPLAN Notices, 2008 - dl.acm.org
When scripts in untyped languages grow into large programs, maintaining them becomes
difficult. A lack of types in typical scripting languages means that programmers must (re) …

Scrap your boilerplate: a practical design pattern for generic programming

R Lämmel, SP Jones - ACM SIGPLAN Notices, 2003 - dl.acm.org
We describe a design pattern for writing programs that traverse data structures built from rich
mutually-recursive data types. Such programs often have a great deal of" boilerplate" code …

Guarded recursive datatype constructors

H Xi, C Chen, G Chen - Proceedings of the 30th ACM SIGPLAN-SIGACT …, 2003 - dl.acm.org
We introduce a notion of guarded recursive (gr) datatype constructors, generalizing the
notion of recursive datatypes in functional programming languages such as ML and Haskell …

Finally tagless, partially evaluated: Tagless staged interpreters for simpler typed languages

J Carette, O Kiselyov, C Shan - Journal of Functional Programming, 2009 - cambridge.org
We have built the first family of tagless interpretations for a higher-order typed object
language in a typed metalanguage (Haskell or ML) that require no dependent types …

[图书][B] Theories of programming languages

JC Reynolds - 1998 - books.google.com
First published in 1998, this textbook is a broad but rigourous survey of the theoretical basis
for the design, definition and implementation of programming languages and of systems for …

Foundational proof-carrying code

AW Appel - Proceedings 16th Annual IEEE Symposium on …, 2001 - ieeexplore.ieee.org
Proof-carrying code is a framework for the mechanical verification of safety properties of
machine-language programs, but the problem arises of" quis custodiat ipsos custodes"-ie …

System F with type equality coercions

M Sulzmann, MMT Chakravarty, SP Jones… - Proceedings of the …, 2007 - dl.acm.org
We introduce System FC, which extends System F with support for non-syntactic type
equality. There are two main extensions:(i) explicit witnesses for type equalities, and (ii) …