Abstract
Strong moding is turning out to play fundamental roles in concurrent logic programming (or in general, concurrent constraint programming) as strong typing does but in different respects. “Principal modes” can most naturally be represented as feature graphs and can be formed by unification. We built a mode analyzer, implementing mode graphs and their operations by means of concurrent processes and streams (rather than records and pointers). This is a non-trivial programming experience with complicated process structures and has provided us with several insights into the relationship between programming with dynamic data structures and programming with dynamic process structures. The mode analyzer was then applied to the analyzer itself to study the characteristics of the mode constraints it imposed and of the form of large mode graphs. Finally, we show how our framework based on principal moding can be extended to deal with (1) random-access data structures, (2) mode polymorphism, (3) higher-order constructs, and (4) various non-Herbrand constraint systems.
Supported in part by the Ministry of Education and Japan Information Processing Development Center (JIPDEC).
Preview
Unable to display preview. Download preview PDF.
References
Aït-Kaci, H. and Nasr, R., LOGIN: A Logic Programming Language with Built-In Inheritance. J. Logic Programming, Vol. 3, No. 3 (1986), pp. 185–215.
Cohen, S., Multi-Version Structures in Prolog. In Proc. Int. Conf. on Fifth Generation Computer Systems 1984, ICOT, Tokyo, pp. 265–274.
Eriksson, L.-H. and Rayner, M., Incorporating Mutable Arrays into Logic Programming, In Proc. Second Int. Logic Programming Conf., Uppsala Univ., Sweden, 1984, pp. 101–114.
Ueda, K. and Chikayama, T., Efficient Stream/Array Processing in Logic Programming Languages. In Proc. Int. Conf. on Fifth Generation Computer Systems 1984, ICOT, Tokyo, pp. 317–326.
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. and Morita, M., Moded Plat GHC and Its Message-Oriented Implementation Technique. New Generation Computing, Vol. 13, No. 1 (1994), pp. 3–43.
Tick, E. and Koshimura, M., Static Mode Analyses of Concurrent Logic Languages, ICOT Tech. Report TR-875, ICOT, Tokyo, 1994. Also to appear in J. Programming Languages Design and Implementation.
Ueda, K. and Morita, M., Message-Oriented Parallel Implementation of Moded Flat GHC. New Generation Computing, Vol. 11, Nos. 3–4 (1993), pp. 323–341.
Ueda, K., I/O Mode Analysis in Concurrent Logic Programming. In Proc. Int. Workshop on Theory and Practice of Parallel Programming (TPPP'94), Ito, T. and Yonezawa, A. (eds.), LNCS 907, Springer, 1995, pp. 356–368.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ueda, K. (1996). Experiences with strong moding in concurrent logic/constraint programming. In: Ito, T., Halstead, R.H., Queinnec, C. (eds) Parallel Symbolic Languages and Systems. PSLS 1995. Lecture Notes in Computer Science, vol 1068. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0023059
Download citation
DOI: https://doi.org/10.1007/BFb0023059
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61143-1
Online ISBN: 978-3-540-68332-2
eBook Packages: Springer Book Archive