Abstract
We present a survey of the Phoenix Design Space (PDS) and its applications. The PDS is a conceptual framework for studying declarative programming languages based on assertional programming as a uniform presentation of declarative language semantics, and a constraint abstract machine as a general computational model for declarative programming. The PDS provides a methodology for systematically integrating functional and logic programming languages. We present a simple classification of existing integrated functional and logic programming systems and show how the design space induces a powerful new programming paradigm, constraint functional logic programming, and provides insights into other aspects of declarative programming such as concurrency and program transformation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Hassan Ait-Kaci.LIFE:Anatuaral languahe for natural language.MCC Tech.Report ACA- ST-074–88. Microelectronics and Computer Technology Corp, Austin, TX., Feb. 1988.
Arvind, R. Nikhil and K. Pingali I-structure: Data Structures for Parallel Computing ACM Transactions on Programming Languages and Systems,11, Oct 1989.
M. Chandy and J. Misra Parallel Program Design - A foundation. Addison Wesley, ’1988.
J. Darlington, A.J. Field and H. Pull, The Unification of Functional and Logic Languages in Logic Programming: Relation, Function and Equation P.37—P70. Prentice-Hall, Englewood Cliffs, New Jersey. 1986.
J. Darlington, Y. Guo and H. Pull Introducing Constraint Functional Logic Programming Tech. Report, Dept of Computing, Imperial College, Aug.1991.(In this proceedings)
C.A. R. Hoare ATheory of Conjunction and Concurrency Oxford PRG, May 1989
N. Dershowitz and M. Okada Conditional Equational Programming and the Theory of Conditional Term Rewriting Proceedings of the FGCS’84, 1984
N. Dershowitz and D.A. Plaisted Equational Programming in Machine Intelligence, 1986.
Y. Guo and H. Lock. A classification for the integration of functional and logic languages Technical report, Dept. of Computing, Imperial College and GMD Forschungsstelle an der Universität Karlsruhe, March 1990. Deliverable, ESPRIT BRA 3147.
N. Dershowitz and J.P. Jouannaud. Rewrite systems in Van Leuven, editor, Handbook of Theoretical Computer Science North Holland, 1990
M.H. van Emden and K. Yukawa Logic Programming with Equations Journal of Logic Programming, Vol4. Number 4, 1987.
Laurent Fribourg. SLOG: A logic programming language interpreter based on clausal superposition and rewriting In Proceeding of the 2nd IEEE Symposium on Logic Programming, Boston,1985.
J. Y. Girard Linear Logic Theoretical Computer Science, 50: 1–102, 1987.
J. Goguen and R.Burstall INSTITUTIONS: Abstract Model Theory for Specification and Programming TR CSLI-85–30 SRI, 1985.
J. Goguen Types as Theories PRG, Oxford University, Feb. 1990.
J. Goguen and J, Meseguer Unifying Functional Object-oriented and Logic Programming with Logical Semantics Technical Report CSLI-87–93, CSLI, Stanford University, March 1987.
J. Goguen and J. Meseguer Equality Types Modules and (why not?) Generics for Logic Programming Journal of Logic Programminglp,Vol 2, 1984.
Y. Guo General Constraint Programming: A Paradigm for Integrating Functional and Logic Languages Forthcoming Ph.D thesis, Dept. of Computing, Imperial College, 1991.
Joxan Jaffar and Jean-Louis Lassez. Logical programming scheme. In D. DeGroot and G. Lindstrom, editors, Logic Programming, pages 441–467. Prentice-Hall, Englewood Cliffs, New Jersey, 1986.
J. Jaffer, J. Lassez and M. Maher Constraint Logic Programming Proc. of 14th ACM Symp. POPL, 1987
S.Kapian Conditional Rewrite RulesTheoretical Computer Science Vol.33
A. G. Lindstrom Implementing Logical Variables on a Graph Reduction Machines Proc. of a Workshop on Graph Reduction, Santa Fe,New Mexico, Springer LNCS 279, 1987 pp 175–193, 1984.
F. McCabe Logic and Objects Tech. Report, Dept. of Computing,Imperial College, 1986.
Dale Miller and Gopalan Nadathur. A logic programming approach to manipulating formulas and progams In Poceedings of the 4th Symposium on Logic Programming San Franciscopages 379–399,1987.
J. Meseguer General Logics SRI-I-CSL-89–5 Mar,1989.
J. Goguen and J. Meseguer Models and Equality for Logic Programming Proceedings TAPSOFT 87, LNCS 250, 1987.
J. Meseguer Rewriting as a Unified Model of Concurrency SRI—CSL-90–02R. Feb,1990.
N. Marti-Oliet and J. Meseguer An Algebraic Aziomatization of Linear Logic Models Technical Report SRI-CSL-89–11, SRI International, Computer Science Lab, December 1989.
N. Dershowitz and M. Okada. Conditional equational programming and the theory of conditional term rewriting In Proc. of the FGCS’ 8.41988.
J. Robinson and L. Wos Paramodulation and Theorem Proving in First Order Theories with Equality Machine Intelligence, Vol.4, 1972.
U.S.Reddy Functional Logic Programming Part I Proc. of a Workshop on Graph Reduction, Santa Fe, New Mexico, Springer LNCS 279, 1987
Y. Guo, J. Darlington, and H. Lock. Deloping phoenix design space: A uniform framework for investigating declarative programming languages Technical report, Dept. of Computing, Imperial College and GMD Forschungsstelle an der Universiät Karlsruhe, April 1990.
R. Jagadeesan and K. Pingali Abstract Semantics for Higher Order Functional Language with Logic Variables TR91–1220 Dept. of Computer Science, Cornell Univ.Ithaca, July 1991.
V. Saraswat, M. Rinard and P. Panangaden Semantic Foundations of Concurrent Constraint Programming Proceedings of POPL, 1991
D.Scott Domains for Denotational Semantics In Proceedings of ICALP, 1982.
D.Scott Data Types as Lattice SIAM5(3):522–587, 1976.
G.Smolka Logic Programming over Polymorphically Order-Sorted Types Ph.D Thesis Universitat Kaiserslautern 1989.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1992 Springer-Verlag London
About this paper
Cite this paper
Darlington, J., Guo, Y., Pull, H. (1992). A Design Space for Integrating Declarative Languages. In: Darlington, J., Dietrich, R. (eds) Declarative Programming, Sasbachwalden 1991. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3794-8_1
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3794-8_1
Publisher Name: Springer, London
Print ISBN: 978-3-540-19735-5
Online ISBN: 978-1-4471-3794-8
eBook Packages: Springer Book Archive