|
ABSTRACT
A soft type system infers 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 type checker uses 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 Scheme is 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.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
ABADI, M., CARDELLI, L., PIERCE, B., AND RI~MY, D. 1995. Dynamic typing in polymorphic languages. J. Funct. Program. 5, 1 (Jan.), 111-130.
|
 |
3
|
|
 |
4
|
|
 |
5
|
Alexander Aiken , Edward L. Wimmers , T. K. Lakshman, Soft typing with conditional types, Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.163-173, January 16-19, 1994, Portland, Oregon, United States
[doi> 10.1145/174675.177847]
|
 |
6
|
|
| |
7
|
BARENDREGT, H. P. 1984. The Lambda Calculus: Its Syntax and Semantics, Revised ed. Studies in Logic and the Foundations of Mathematics, vol. 103. North-Holland, Amsterdam.
|
| |
8
|
BEER, R. D. 1987. Preliminary report on a practical type inference system for Common Lisp. Lisp Pointers 1, 2, 5-11.
|
 |
9
|
L. Cardelli , J. Donahue , M. Jordan , B. Kalsow , G. Nelson, The Modula–3 type system, Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.202-212, January 11-13, 1989, Austin, Texas, United States
[doi> 10.1145/75277.75295]
|
 |
10
|
|
| |
11
|
|
| |
12
|
|
 |
13
|
H. Abelson , R. K. Dybvig , C. T. Haynes , G. J. Rozas , N. I. Adams, IV , D. P. Friedman , E. Kohlbecker , G. L. Steele, Jr. , D. H. Bartley , R. Halstead , D. Oxley , G. J. Sussman , G. Brooks , C. Hanson , K. M. Pitman , M. Wand , William Clinger , Jonathan Rees, Revised report on the algorithmic language scheme, ACM SIGPLAN Lisp Pointers, v.IV n.3, p.1-55, July, 1991
[doi> 10.1145/382130.382133]
|
| |
14
|
DAMAS, L. M. M. 1985. Type assignment in programming languages. Ph.D. thesis, Univ. of Edinburgh, Edinburgh, Scotland.
|
 |
15
|
|
| |
16
|
|
| |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
FLANAGAN, C. AND FELLEISEN, M. 1995. Set-based analysis for full Scheme and its use in softtyping. Tech. Rep. TR95-253, Rice Univ., Houston, Tex. Oct.
|
| |
21
|
FREEMAN, T. 1993. Refinement types. Ph.D. thesis, Carnegie Mellon Univ., Pittsburgh, Pa.
|
 |
22
|
|
 |
23
|
|
| |
24
|
GREENGARD, L. 1987. The Rapid Evaluation of Potential Fields in Particle Systems. ACM Press, New York.
|
| |
25
|
|
 |
26
|
|
| |
27
|
|
| |
28
|
|
 |
29
|
|
 |
30
|
|
| |
31
|
HINDLEY, R. 1969. The principal type-scheme of an object in combinatory logic. Trans. Am. Math. Soc. 146, 29-60.
|
| |
32
|
|
| |
33
|
HOANG, M., MITCHELL, J., AND VISWANATHAN, R. 1993. Standard ML-NJ weak polymorphism and imperative constructs. In Proceedings of the 8th Annual Symposium on Logic in Computer Science. IEEE Computer Society Press, Los Alamitos, Calif., 15-25.
|
 |
34
|
Paul Hudak , Simon Peyton Jones , Philip Wadler , Brian Boutel , Jon Fairbairn , Joseph Fasel , María M. Guzmán , Kevin Hammond , John Hughes , Thomas Johnsson , Dick Kieburtz , Rishiyur Nikhil , Will Partain , John Peterson, Report on the programming language Haskell: a non-strict, purely functional language version 1.2, ACM SIGPLAN Notices, v.27 n.5, p.1-164, May 1992
[doi> 10.1145/130697.130699]
|
 |
35
|
|
| |
36
|
|
 |
37
|
|
 |
38
|
|
| |
39
|
|
| |
40
|
LEROY, X. 1992a. Typage polymorphe d'un langage Mgorithmique. Ph.D. thesis, L'Universit6 Paris 7, France.
|
 |
41
|
|
| |
42
|
LEROY, X. AND MAUNY, M. 1993. Dynamics in ML. J. Funct. Program. 3, 4, 431-463.
|
 |
43
|
|
| |
44
|
|
 |
45
|
|
| |
46
|
|
| |
47
|
MARTELLI, A. AND MONTANARI, W. 1976. Unification in linear time and space: A structured presentation. Tech. Rep. B76-16, Ist. di Elaborazione delle Informazione, Consiglio Nazionale delle Ricerche, Pisa, Italy. July.
|
| |
48
|
MILNER, R. 1978. A theory of type polymorphism in programming. J. Comput. Syst. Sci. 17, 348-375.
|
| |
49
|
|
| |
50
|
MITCHELL, J. C. 1991. Type inference with simple subtypes. J. Funct. Program. 1, 3 (July), 245-286.
|
| |
51
|
|
| |
52
|
PATERSON, M. S. AND WEGMAN, M. N. 1978. Linear unification. J. Comput. Syst. Sci. 16, 2 (Apr.), 158-167.
|
 |
53
|
|
| |
54
|
RI~MY, D. 1991. Type inference for records in a natural extension of ML. Tech. Rep. 1431, INRIA, France. May.
|
| |
55
|
RI~MY, D. 1992. Extension of ML type system with a sorted equational theory on types. Tech. Rep. 1766, INRIA, France. Oct.
|
 |
56
|
|
| |
57
|
|
 |
58
|
|
| |
59
|
TALPIN, J.-P. AND JOUVELOT, P. 1992. The type and effect discipline. In Proceedings of the 7th Annual Symposium on Logic in Computer Science. IEEE Computer Society Press, Los Alamitos, Calif., 162-173.
|
| |
60
|
|
 |
61
|
|
| |
62
|
|
| |
63
|
WAND, M. 1987. Complete type inference for simple objects. In Proceedings of the 2nd IEEE Symposium on Logic in Computer Science. IEEE Computer Society Press, Los Alamitos, Calif., 37-44.
|
| |
64
|
|
| |
65
|
|
| |
66
|
|
| |
67
|
|
 |
68
|
|
| |
69
|
WRIGHT, t. K. AND DUBA, B. F. 1993. Pattern matching for Scheme. Rice Univ., Houston, Tex. Available from http://www.neci.nj.nec.com/homepages/wright.html.
|
| |
70
|
|
| |
71
|
ZHAO, F. 1987. An O(N) algorithm for three-dimensionM N-body simulations. M.S. thesis, Dept. of Electrical Engineering and Computer Science, Massachusetts Inst. of Technology, Cambridge, Mass.
|
CITED BY 17
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Yao-Wen Huang , Fang Yu , Christian Hang , Chung-Hung Tsai , Der-Tsai Lee , Sy-Yen Kuo, Securing web application code by static analysis and runtime protection, Proceedings of the 13th international conference on World Wide Web, May 17-20, 2004, New York, NY, USA
|
|
|
|
|
|
|
|
|
|
|
|
Sam Tobin-Hochstadt , Matthias Felleisen, Interlanguage migration: from scripts to programs, Companion to the 21st ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, October 22-26, 2006, Portland, Oregon, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|