Skip to main content

Advertisement

Springer Nature Link
Log in
Menu
Find a journal Publish with us Track your research
Search
Cart
  1. Home
  2. Programming Languages and Systems — ESOP '94
  3. Conference paper

A tiny constraint functional logic language and its continuation semantics

  • Contributed Papers
  • Conference paper
  • First Online: 01 January 2005
  • pp 439–453
  • Cite this conference paper
Programming Languages and Systems — ESOP '94 (ESOP 1994)
A tiny constraint functional logic language and its continuation semantics
  • Andy Mück1,
  • Thomas Streicher1 &
  • Hendrik C. R. Lock2 

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 788))

Included in the following conference series:

  • European Symposium on Programming
  • 732 Accesses

  • 3 Citations

Abstract

We present an extension of λ-calculus by logical features and constraints, which yields a minimal core language for constraint functional logic programming. We define a denotational semantics based on continuation passing style. The operational semantics of our language is given as a set of reduction rules. We prove soundness of the operational semantics w.r.t. the continuation semantics. Finally, we show how pure functional logic programs can be translated to this core language in a sound way.

Download to read the full chapter text

Chapter PDF

Similar content being viewed by others

Founded Semantics and Constraint Semantics of Logic Rules

Chapter © 2018

Extensional Semantics for Higher-Order Logic Programs with Negation

Chapter © 2016

Locally Abstract, Globally Concrete Semantics of Concurrent Programming Languages

Chapter © 2017

Explore related subjects

Discover the latest articles, books and news in related subjects, suggested using machine learning.
  • Formal Logic
  • General Logic
  • Linear Logic
  • Lisp
  • Perl
  • Computer Science Logic and Foundations of Programming

References

  1. E. Astesiano, G. Costa: Sharing in Nondeterminism. In 6th International Conference on Automata, Languages and Programming, LNCS 71, Springer Verlag 1979.

    Google Scholar 

  2. H.P. Barendregt. The Lambda Calculus. Its Syntax and Semantics. North Holland, 1984.

    Google Scholar 

  3. P.G. Bosco, E. Giovanetti, G. Levi, C. Palamedessi: A Complete Semantic Characterization of K-LEAF, a Logic Language with Partial Functions. In Proc. 4th Symposium on Logic Programming, San Francisco, pp. 318–327. 1987.

    Google Scholar 

  4. R.M. Burstall, J. Darlington: A Transformation System for Developing Recursive Programs. Journal of the ACM, 24(1), pp. 44–67, 1977.

    Google Scholar 

  5. J. Cohen: Constraint Logic Programming Languages. In CACM 33 (7), pp. 52–68, 1990.

    Google Scholar 

  6. A. Colmerauer: An Introduction to Prolog III. Communications of the ACM, 33 (7), pp. 52–68, 1990.

    Google Scholar 

  7. J.N. Crossley, L. Mandel, M. Wirsing: Untyped Constraint Lambda Calculus is Weakly Church Rosser, Proc. NATO-ASI Constraint Programming Summer School, Pärnu, Estonia, 1993. An extended version of this paper appears as a Research Report, Ludwig-Maximilians-Universität München, 1993.

    Google Scholar 

  8. J. Darlington, Y. Guo, H. Pull: A New Perspective in Integrating Functional and Logic Languages. Technical Report, Imperial College London, 1992.

    Google Scholar 

  9. M.J. Fay: First-Order Unification in an Equational Theory. In Proc. 4th Workshop on Automated Deduction, pp. 161–167, Austin (Texas). Academic Press, 1979.

    Google Scholar 

  10. M. Felleisen, D. Sitaram: Reasoning with Continuations II: Full Abstraction for Models of Control. In Proc ACM Conference in Lisp and Functional Programming, pp. 161–175, ACM Press, 1990.

    Google Scholar 

  11. T. Frühwirth, A. Herold, V. Küchenhoff, T. Le Provost, P. Lim, E. Monfroy, M. Wallace: Constraint Logic Programming — an Informal Introduction. Summer School in Logic Programming, Zürich, LNAI 636, pp. 3–35, Springer Verlag, 1992.

    Google Scholar 

  12. M. Hanus: Efficient Implementation of Narrowing and Rewriting. In Proc. International Workshop on Processing Declarative Knowledge, pp. 344–365. LNAI 567, Springer Verlag, 1991.

    Google Scholar 

  13. M.C.B. Hennessy, E.A. Ashcroft. A Mathematical Semantics for a Nondeterministic Typed λ-calculus. Theoretical Computer Science, 11, pp. 227–245, 1980.

    Google Scholar 

  14. P. van Hentenryck: Constraint Satisfaction in Logic Programming. MIT Press, 1989.

    Google Scholar 

  15. J. Jaffar, J.-L. Lassez: Constraint Logic Programming. In Proc. of the 14th ACM Symposium on Principles of Programming Languages, Munich (Germany), pp. 111–119. ACM Press, 1987.

    Google Scholar 

  16. J. Jaffar, S. Michaylov, P. Stuckey, R. Yap: The CLP(R) Language and System. ACM Transactions on Programming Languages and Systems, pp. 339–395, 1992.

    Google Scholar 

  17. H. Kuchen, R. Loogen, J.J. Moreno-Navarro, M. Rodriguez-Artalejo: Graphbased Implementation of a Functional Logic Language. In Proc. ESOP 90, pp. 271–290. LNCS 432, Springer Verlag, 1990.

    Google Scholar 

  18. Y. Lafont, B. Reus, Th. Streicher: From Continuation Semantics to Abstract Machines, unpublished manuscript, 1993.

    Google Scholar 

  19. H.C.R.Lock: The Implementation of Functional Logic Programming Languages, Oldenbourg-Verlag 1993.

    Google Scholar 

  20. F.J. Lopez-Fraguas: A General Scheme for Constraint Functional Logic Programming. In Proc. 3rd. International Conference on Algebraic and Logic Programming, Volterra (Italy), pp. 213–227. LNCS 632, Springer Verlag 1992.

    Google Scholar 

  21. L. Mandel, A. Mück, Th. Streicher: A New Approach to Constraint Functional Logic Programming. Forthcoming Research Report, Ludwig-Maximilians-Universität München, 1993.

    Google Scholar 

  22. D. Miller: A Logic Programming Language with Lambda Abstraction, Functional Variables and Simple Unification. Journal of Logic Programming, 1 (4), pp. 497–536, 1991.

    Google Scholar 

  23. A. Mück: Compilation of Narrowing. In Proc. of the 2nd International Workshop on Programming Language Implementation and Logic Programming, pp. 16–29. LNCS 456, Springer Verlag, 1990.

    Google Scholar 

  24. R. Paterson: A Tiny Functional Language with Logical Features, Declarative Programming, Sassbachwalden, Springer, 1991.

    Google Scholar 

  25. U.S. Reddy: Narrowing as the Operational Semantics of Functional Languages. Proc IEEE Symposium on Logic Programming, pp. 138–151, 1985.

    Google Scholar 

  26. D.H.D. Warren: An Abstract Prolog Instruction Set. Technical Note 309, SRI International, Menlo Park, California, 1993.

    Google Scholar 

  27. M. Wirsing: Algebraic Specification. In J. van Leeuwen (ed.): Handbook of Theoretical Computer Science, pp. 675–788, Elsevier Science Publishers, 1990.

    Google Scholar 

  28. D. Wolz: Design of a Compiler for Lazy Pattern Driven Narrowing. In Recent Trends in Data Type Specifications, pp. 362–379. LNCS 543, Springer Verlag, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

  1. Ludwig-Maximilians-Universität München, Leopoldstr. 11B, D-80802, München

    Andy Mück & Thomas Streicher

  2. IBM Scientific Centre Heidelberg, Vangerowstr. 18, D-69020, Heidelberg

    Hendrik C. R. Lock

Authors
  1. Andy Mück
    View author publications

    Search author on:PubMed Google Scholar

  2. Thomas Streicher
    View author publications

    Search author on:PubMed Google Scholar

  3. Hendrik C. R. Lock
    View author publications

    Search author on:PubMed Google Scholar

Editor information

Donald Sannella

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Mück, A., Streicher, T., Lock, H.C.R. (1994). A tiny constraint functional logic language and its continuation semantics. In: Sannella, D. (eds) Programming Languages and Systems — ESOP '94. ESOP 1994. Lecture Notes in Computer Science, vol 788. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57880-3_29

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/3-540-57880-3_29

  • Published: 08 June 2005

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57880-2

  • Online ISBN: 978-3-540-48376-2

  • eBook Packages: Springer Book Archive

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Keywords

  • Logic Program
  • Logic Programming
  • Operational Semantic
  • Reduction Rule
  • Constraint Solver

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Publish with us

Policies and ethics

Search

Navigation

  • Find a journal
  • Publish with us
  • Track your research

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Journal finder
  • Publish your research
  • Language editing
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our brands

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Discover
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support
  • Legal notice
  • Cancel contracts here

216.73.216.97

Not affiliated

Springer Nature

© 2025 Springer Nature