Hostname: page-component-7c8c6479df-fqc5m Total loading time: 0 Render date: 2024-03-28T08:09:48.569Z Has data issue: false hasContentIssue false

Type sharing constraints and undecidability

Published online by Cambridge University Press:  01 March 2007

PHILIPPE NARBEL*
Affiliation:
LaBRI, University of Bordeaux 1, 351, Cours de la Libération, 33405 Talence, France (e-mail: narbel@labri.fr)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the ‘Save PDF’ action button.

Let be a set of modules and parameterized modules including type sharing constraint specifications. We prove that determining the set of the effective modules described by is undecidable. As a consequence, type sharing constraints are proved to be not always avoidable by constructive transformations.

Type
Article
Copyright
Copyright © Cambridge University Press 2007

References

Biagioni, E., Harper, R. & Lee, P. (2001) A network protocol stack in Standard ML. Higher Order Symbol. Comput. 14 (4), 309356.CrossRefGoogle Scholar
Batory, D. & O'Malley, S. (1992) The design and implementation of hierarchical software systems with reusable components. ACM Trans. Softw. Eng. Meth. 1 (4), 355398.CrossRefGoogle Scholar
Czarnecki, K. & Eisenecker, U. W. (2000) Generative Programming. Addison Wesley.Google Scholar
Davis, M. D. & Weyuker, E. J. (1985) Computability, Complexity and Languages. Academic Press.Google Scholar
Gibbons, J. & Jeuring, J. (2003) Generic Programming. IFIP Working Conference on Generic Programming. Kluwer Academic.CrossRefGoogle Scholar
Goguen, J. (1984) Parameterized programming. IEEE Trans. Softw. Eng. SE-10 (5), 528543.CrossRefGoogle Scholar
Harper, R. (2002) Programming in Standard ML. Carnegie Mellon University. Lecture Notes.Google Scholar
Harper, R. & Mitchell, J. (1993) On the type structure of Standard ML. ACM Trans. Program. Lang. Syst. 15 (2), 211252.CrossRefGoogle Scholar
Harper, R., Milner, R. & Tofte, M. (1987) A type discipline for program modules. Colloquium on Functional and Logic Programming and Specifications (CFLP) on TAPSOFT '87, pp. 308319. Springer-Verlag.Google Scholar
Harper, R. & Pierce, B. C. (2005) Design considerations for ML-style module systems. In: Pierce, B. C., editor, Advanced Topics in Types and Programming Languages, pp. 293345. MIT Press.Google Scholar
Jones, M. P. (1996) Using parameterized signatures to express modular structure. Proceedings 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 68–78.CrossRefGoogle Scholar
Krueger, C. (1992) Software reuse. ACM Computing Surveys, 24, 131183.CrossRefGoogle Scholar
Leroy, X. (1996) A syntactic theory of type generativity and sharing. Journal of Functional Programming, 6 (5), 667698.CrossRefGoogle Scholar
MacQueen, D. (1986) Using dependent types to express modular structure. Proceedings 13rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 277–286.CrossRefGoogle Scholar
Milner, R., Tofte, M., Harper, R. & MacQueen, D. (1987) The Definition of Standard ML (Revised). MIT Press.Google Scholar
Narbel, Ph. (2005) Programmation fonctionnelle, générique et objet (Une introduction avec le langage OCaml). Vuibert, Paris.Google Scholar
Paulson, L. C. (1997) ML for the Working Programmer. Cambridge University Press.Google Scholar
Submit a response

Discussions

No Discussions have been published for this article.