Abstract
This paper briefly reviews concurrent logic programming and the I/O mode system designed for the concurrent logic language Flat GHC. The mode system plays fundamental roles both in programming and implementation in almost the same way as type systems do but in different respects. It provides us with the information on how data are generated and consumed and thus the view of “data as resources”. It statically detects bugs resulting from ill-formed dataflow and advocates the “programming as wiring” paradigm. Well-modedness guarantees the safety of unification, the basic operation in concurrent logic programming. Information on the numbers of access paths to data can be obtained by slightly extending the framework, which can be used for compile-time garbage collection and the destructive update of structures.
Preview
Unable to display preview. Download preview PDF.
References
Baker, H. G., Lively Linear Lisp-'Look Ma, No Garbage!' Sigplan Notices, Vol. 27, No. 8 (1992), pp. 89–98.
Chikayama, T. and Kimura, Y., Multiple Reference Management in Flat GHC. In Proc. 4th Int. Conf. on Logic Programming, MIT Press, Cambridge, MA, 1987, pp. 276–293.
Clark, K. L. and Gregory, S., A Relational Language for Parallel Programming. In Proc. ACM Conf. on Functional Programming Languages and Computer Architecture, ACM, 1981, pp. 171–178.
Clark, K. L. and Gregory, S., PARLOG: Parallel Programming in Logic. ACM. Trans. Prog. Lang. Syst., Vol. 8, No. 1 (1986), pp. 1–49.
Hirata, M., Programming Language Doc and Its Self-Description or, X=X is Considered Harmful. In Proc. 3rd Conf. of Japan Society of Software Science and Technology, 1986, pp. 69–72.
Maher, M. J., Logic Semantics for a Class of Committed-Choice Programs. In Proc. Fourth Int. Conf. on Logic Programming, MIT Press, Cambridge, MA, 1987, pp. 858–876.
Saraswat, V. A. and Rinard M., Concurrent Constraint Programming (Extended Abstract). In Conf. Record of the Seventeenth Annual ACM Symp. on Principles of Programming Languages, ACM, 1990, pp. 232–245.
Saraswat, V. A., Kahn, K. and Levy, J., Janus: A Step Towards Distributed Constraint Programming. In Proc. 1990 North American Conference on Logic Programming, Debray, S. and Hermenegildo, M. (eds.), MIT Press, 1990, pp. 431–446.
Shapiro, E. Y., A Subset of Concurrent Prolog and Its Interpreter. ICOT Tech. Report TR-003, Institute for New Generation Computer Technology, Tokyo, 1983.
Shapiro, E., The Family of Concurrent Logic Programming Languages. Computing Surveys, Vol. 21, No. 3 (1989), pp. 413–510.
Ueda, K., Guarded Horn Clauses. ICOT Tech. Report TR-103, ICOT, Tokyo, 1985. Also in Logic Programming '85, Wada, E. (ed.), Lecture Notes in Computer Science 221, Springer-Verlag, Berlin Heidelberg, 1986, pp. 168–179.
Ueda, K. and Morita, M., A New Implementation Technique for Flat GHC. In Proc. Seventh Int. Conf. on Logic Programming, The MIT Press, Cambridge, MA, 1990, pp. 3–17.
Ueda, K. and Chikayama, T., Design of the Kernel Language for the Parallel Inference Machine. The Computer Journal, Vol. 33, No. 6 (1990), pp. 494–500.
Ueda, K., The Fifth Generation Project: Personal Perspectives, Commun. ACM, Vol. 36, No. 3 (1993), pp. 65–76.
Ueda, K. and Morita, M., Moded Flat GHC and Its Message-Oriented Implementation Technique. New Generation Computing, Vol. 13, No. 1 (1994), pp. 3–43.
Yoshida, K. and Chikayama, T., A'UM — A Stream-Based Concurrent Object-Oriented Language, in Proc. Int. Conf. on Fifth Generation Computer Systems 1988, ICOT, Tokyo, 1988, pp. 638–649. Also in New Generation Computing, Vol. 7, No. 2–3 (1990), pp. 127–157.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ueda, K. (1995). I/O mode analysis in concurrent logic programming. In: Ito, T., Yonezawa, A. (eds) Theory and Practice of Parallel Programming. TPPP 1994. Lecture Notes in Computer Science, vol 907. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0026579
Download citation
DOI: https://doi.org/10.1007/BFb0026579
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-59172-6
Online ISBN: 978-3-540-49218-4
eBook Packages: Springer Book Archive