Abstract
We describe a novel application of subtyping in which a small orthogonal set of structural subtyping rules are used to capture the notion of scaling—an unusual variety of polymorphism found in APL-like languages which is attracting renewed interest due to its applications in data parallel programming. The subtyping approach allows us to provide a simple coercion-based semantics for a generalized interpretation of scaling that goes well beyond what is available in APL dialects.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Backus, J. Can Programming be Liberated from the von Neumann Style? A Functional Style and Its Algebra of Programs. CACM 21, 613–641 (1978)
Benkard, J. P. Control of Structure and Evaluation. In: Proc. APL'85 Conference.
Breazu-Tannen, V., Coquand, T., Gunter, C. and Scedrov, A. Inheritance and explicit coercion. In: Proceedings of Fourth LICS Symposium. IEEE 1989
Breuel, T.M. Data Level Parallel Programming in C++. In: Proc. of 1988 USENIX C++ Conf., pp. 153–167.
Cardelli, L. A Semantics of Multiple Inheritance. Info. and Comp. 76, 138–164 (1988)
Curien, P-L. and Ghelli, G. Coherence of Subsumption. Manuscript. 1989
Cardelli, L. and Wegner, P. On Understanding Types, Data Abstraction and Polymorphism. Computing Surveys 17 (4) (1985)
Damas, L. and Milner, R. Principle Type-schemes for Functional Programs. In: Proc. 9th POPL Symposium, Albuquerque, NM. ACM 1982
Huet, G. and Levy, J-J. Computations in Nonambiguous Linear Term Rewriting Systems. Tech. Rep. 359, INRIA-Le Chesney, France, 1979
Hillis, W.D. and Steele, G.L., Jr. Data Parallel Algorithms. CACM 29 (12) (1986)
Iverson, K.E. A Programming Language. Wiley, New York, 1962
Jenkins, M.A. and Michel, J. Operators in an APL Containing Nested Arrays. CIS Dept., Queen's University, Kingston, Ontario. Tech. Rep. 78–60. 1978
Milner, R. A Proposal for Standard ML. In: Proc. 1984 ACM Symp. on LISP and Functional Programming, Austin, TX., pp. 184–197. ACM 1984
Mitchell, J.C. Polymorphic Type Inference and Containment. Information and Computation 76, 211–249 (1988)
Reynolds, J.C. Using Category Theory to Design Implicit Conversions and Generic Operators. In: Semantics Directed Compiler Generation (N.D.Jones, Ed.), pp. 211–258, Lecture Notes in Computer Science, Vol. 94. Springer-Verlag 1980
Reynolds, J.C. Three Approaches to Type Structure. In: Proc. TAPSOFT 1985, Lecture Notes in Computer Science, Vol. 186. Springer-Verlag 1985
Thatte, S.R. Type Inference with Partial Types. In: Proc. 15th ICALP. Lecture Notes in Computer Science, Vol. 317, pp.615–629. Springer-Verlag 1988
Thatte, S.R. Quasi-static Typing. In: Proc. of the 17th POPL Symposium, San Francisco, CA. ACM 1990
Vishnubhotla, P. Data Parallel Programming on Transputer Networks. In: Proc. of 2nd Conf. of North American Transputer Users Group, G.S. Stiles (Ed.). April 1989
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Thatte, S. (1990). Type inference and implicit scaling. In: Jones, N. (eds) ESOP '90. ESOP 1990. Lecture Notes in Computer Science, vol 432. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-52592-0_77
Download citation
DOI: https://doi.org/10.1007/3-540-52592-0_77
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-52592-9
Online ISBN: 978-3-540-47045-8
eBook Packages: Springer Book Archive