A practical soft type system for scheme
- 1 January 1997
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Programming Languages and Systems
- Vol. 19 (1), 87-152
- https://doi.org/10.1145/239912.239917
Abstract
Asoft type systeminfers types for the procedures and data structures of dynamically typed programs. Like conventional static types, soft types express program invariants and thereby provide valuable information for program optimization and debugging. A soft typecheckeruses the types inferred by a soft type system to eliminate run-time checks that are provably unnecessary; any remaining run-time checks are flagged as potential program errors.Soft Schemeis a practical soft type checker for R4RS Scheme. Its underlying type system generalizes conventional Hindley-Milner type inference by incorporating recursive types and a limited form of union type. Soft Scheme accommodates all of R4RS Scheme including uncurried procedures of fixed and variable arity, assignment, and continuations.Keywords
This publication has 24 references indexed in Scilit:
- Simple imperative polymorphismHigher-Order and Symbolic Computation, 1995
- Using Multilisp for solving constraint satisfaction problems: An application to nucleic acid 3D structure determinationHigher-Order and Symbolic Computation, 1994
- A practical approach to type inference for EuLispHigher-Order and Symbolic Computation, 1993
- Report on the programming language HaskellACM SIGPLAN Notices, 1992
- Type inference with simple subtypesJournal of Functional Programming, 1991
- Revised 4 report on the algorithmic language schemeACM SIGPLAN Lisp Pointers, 1991
- TICL—A type inference system for Common LispSoftware: Practice and Experience, 1990
- Preliminary report on a practical type inference system for common LispACM SIGPLAN Lisp Pointers, 1987
- A Scheme for the Automatic Inference of Variable TypesJournal of the ACM, 1980
- A theory of type polymorphism in programmingJournal of Computer and System Sciences, 1978