Abstract
The idea of introducing logical variables into functional programming languages has been proposed for some years, and many concrete languages with this feature have been developed. Recently the semantic features of the languages in this paradigm have been uniformly modelled using the constraint computation formalism [RJK92]. However, the operational behaviour of these languages has not been studied systematically. In this paper, we propose a linear logic formalization of the the computational behaviour of functional programming languages with logical variables. It is shown that, with the resource-consciousness of linear logic, the computation of the paradigm can be uniformly modelled as deduction in the logic. Therefore, the model provides the logical meaning for the computation as well as a general abstract machine for the implementation of these languages.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Manuel M. T. Chakravarty and Martin Köhler. Equational constraints, residuation, and the parallel jump-machine. In H. Kuchen and R. Loogen, editors, Proceedings of the 4th International Workshop on the Parallel Implementation of Functional Languages, Technical Report No 92-19, RWTH Aachen, Aachen, 1992.
J. Darlington and Y. Guo. Concurrent definitional constraint programming. Technical report, Dept. of Computing, Imperial College, October 1992.
A.L. Davis and R. M. Keller. Data flow program graphs. Computer, 15(2), Feb 1982.
Jean-Yves Girard. Linear logic. Theoretical Computer Science, 50(1), 1987.
Yike Guo. Definitional Constraint Programming. PhD thesis, Dept. of Computing, Imperial College, 1993. Forth coming.
A.G. Lindstrom. Implementing logical variables on a graph reduction architecture. In J. Fasel and R.M. Keller, editors, Proc. of a Workshop on graph Reduction, Santa Fee, LNCS 279, pages 382–400, 1986.
Narciso Marti-Oliet and Jose Meseguer. From Petri Nets to Linear Logic. In Category Theory and Computer Science, pages 313–340. Springer, 1991.
R. Milner, J. Parrow, and D.Walker. A calculus of mobile processes. Technical report, Dept. of Computer Science, University of Edinburgh, 1989.
R. Nikhil, K. Pingali, and Arvind. Id nouveau. Technical report, M.I.T. Laboratory for Computer Science, 1986. CSG Memo 265.
P. Panangaden R. Jagadeesan and K.Pingali. A fully abstract semantics for a functional language with logic variables. In Proc. of 19th POPL. ACM, 1992.
V. A. Saraswat. Concurrent Constraint Programming Languages. PhD thesis, Carnegie-Mellon University, 1989.
V.A. Saraswat and Patrick Lincoln. Linear concurrent constraínt programming. Technical report, Xerox PARC, Feb 1992. Unpublished Draft.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Darlington, J., Guo, Yk., Köhler, M. (1993). Functional programming languages with logical variables: A linear logic view. In: Bruynooghe, M., Penjam, J. (eds) Progamming Language Implementation and Logic Programming. PLILP 1993. Lecture Notes in Computer Science, vol 714. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57186-8_80
Download citation
DOI: https://doi.org/10.1007/3-540-57186-8_80
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57186-5
Online ISBN: 978-3-540-47945-1
eBook Packages: Springer Book Archive