Abstract
Several languages have been designed and implemented for programming mobile computations. This chapter describes a mobile code language based on extending the popular ML language. The language design, and its implementation, are distinguished by the use of run-time type information for computation. This is intended to motivate the use of run-time types in implementations of languages intended for distributed programming and mobile computations, particularly languages such as ML that provide type polymorphism.
Preview
Unable to display preview. Download preview PDF.
References
Martin Abadi and Luca Cardelli. A Theory of Objects. Springer-Verlag, July 1996.
Martin Abadi, Luca Cardelli, Benjamin Pierce, and Gordon Plotkin. Dynamic typing in a statically typed language. ACM Transactions on Programming Languages and Systems, 13(2):237–268, 1991.
Andrew Appel. Run-time tags aren't necessary. Lisp and Symbolic Computation, 19(7):703–705, July 1989.
Andrew Birrell, Greg Nelson, Susan Owicki, and Edward Wobber. Network objects. In Symposium on Operating Systems Principles, pages 217–230. ACM Press, 1993.
Graham M. Birtwistle, Ole-Johan Dahl, Bjorn Myhrhaug, and Kristen Nygaard. Simula Begin. Studentlitteratur (Lund, Sweden), Bratt Institute Fuer Neues Lerned (Goch, FRG), Chartwell-Bratt Ltd (Kent, England, 1979.
L. Cardelli. Mobile computations. In J. Vitek and C. Tschudin, editors, Mobile Object Systems, Lecture Notes in Computer Science, chapter 1. Springer-Verlag, 1997.
Luca Cardelli. A language with distributed scope. In Proceedings of ACM Symposium on Principles of Programming Languages, pages 286–297, San Francisco, California, January 1995. ACM Press.
G. Cugola, C. Ghezzi, G. P. Picco, and G. Vigna. Analyzing mobile code languages. In J. Vitek and C. Tschudin, editors, Mobile Object Systems, Lecture Notes in Computer Science, chapter 8. Springer-Verlag, 1997.
Dominic Duggan. Dynamic typing for distributed programming in polymorphic languages. Submitted for publication, December 1994.
Dominic Duggan. Container objects with polymorphic methods and self types. Submitted for publication, March 1996.
Dominic Duggan. Object type constructors. In Workshop on Foundations of Object-Oriented Languages, New Brunswick, New Jersey, July 1996.
James Gosling and Henry McGilton. The Java language environment. Technical report, Sun Microsystems White Paper, May 1995.
Cordelia Hall, Kevin Hammond, Simon Peyton-Jones, and Philip Wadler. Type classes in Haskell. ACM Transactions on Programming Languages and Systems, 18(2):109–138, March 1996.
Robert Harper and Gregory Morrisett. Compiling polymorphism using intensional type analysis. In Proceedings of ACM Symposium on Principles of Programming Languages, San Francisco, California, January 1995. ACM Press.
Maurice Herlihy and Barbara Liskov. A value transmission method for abstract data types. ACM Transactions on Programming Languages and Systems, 4(4):527–551, 1982.
Bill Janssen and Mike Spreitzer. ILU: Inter-language unification via object modules. Position paper for Workshop at Proceedings of ACM Symposium on Object-Oriented Programming: Systems, Languages and Applications, October 1995.
F. Knabe. Performance-oriented implementation strategies for a mobile agent language. In J. Vitek and C. Tschudin, editors, Mobile Object Systems, Lecture Notes in Computer Science, chapter 13. Springer-Verlag, 1997.
Clifford Krumvieda. Distributed ML: Abstraction for Efficient and Fault-Tolerant Programming. PhD thesis, Cornell University, Ithaca, New York, August 1993.
Xavier Leroy. The ZINC experiment: an economical implementation of the ML language. Technical Report 117, INRIA, 1990.
Xavier Leroy and Michel Mauny. Dynamics in ML. Journal of Functional Programming, 3(4):431–463, 1993.
Xavier Leroy and Pierre Weiss. Dynamics in ML. In Proceedings ofACM Symposium on Functional Programming and Computer Architecture, 1991.
Robin Milner, Mads Tofte, and Robert Harper. The Definition of Standard ML. The MIT Press, 1990.
Greg Nelson. Systems Programming in Modula-3. Prentice-Hall Series in Innovative Technology. Prentice-Hall, 1991.
Atsushi Ohori and Kazuhiko Kato. Semantics for communication primitives in a polymorphic language. In Proceedings of ACM Symposium on Principles of Programming Languages, pages 99–112. ACM Press, 1993.
Simon Peyton-Jones, Cordy Hall, Kevin Hammond, Will Partain, and Philip Wadler. The Glasgow Haskell compiler: a technical overview. In Proceedings of the UK Joint Framework for Information Technology (JFIT) Technical Conference, Keele, England, 1993.
Piotr Przybylski. A type based implementation for a language with distributed scope. Master's thesis, University of Waterloo, 1996.
Francois Rouaix. A Web navigator with applets in CAML. In Fifth International World Wide Web Conference, Paris, France, May 1996.
David Tarditi, Greg Morrisett, Perry Cheng, Christopher Stone, Robert Harper, and Peter Lee. TIL: A type-directed optimizing compiler for ML. In Proceedings of ACM SIGPLAN Conferenceon Programming Language Design and Implementation, Philadelphia, Pennsylvania, May 1996. ACM Press.
Andrew Tolmach. Tag-free garbage collection using explicit type parameters. lnProceedings of ACM Symposium on Lisp and Functional Programming, pages 1–11, Orlando, Florida, 1994. ACM Press.
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Duggan, D. (1997). A type-based implementation of a language with distributed scope. In: Vitek, J., Tschudin, C. (eds) Mobile Object Systems Towards the Programmable Internet. MOS 1996. Lecture Notes in Computer Science, vol 1222. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62852-5_20
Download citation
DOI: https://doi.org/10.1007/3-540-62852-5_20
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-62852-1
Online ISBN: 978-3-540-68705-4
eBook Packages: Springer Book Archive