Abstract
The rewriting logic CRWL has been proposed as a semantic framework for higher-order functional logic programming, using applicative rewriting systems as programs and lazy narrowing as the goal solving procedure. We present an extension of CRWL with a polymorphic type system, and we investigate the consequences of type discipline both at the semantic level and at the operational level. Semantically, models must be extended to incorporate a type universe. Operationally, lazy narrowing must maintain suitable type information in goals, in order to guarantee well-typed computed answers.
This research has been partially supported by the Spanish National Project TIC98-0445-C03-02 ‘TREND” and the Esprit BRA Working Group EP-22457 “CCLII”.
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
Apt, K.R.: Logic Programming. In: van Leeuwen, J. (ed.) Ch. 10. Handbook of Theoretical Computer Science, vol. B, pp. 493–574. Elsevier and The MIT Press (1990)
Arenas-Sánchez, P., Rodríguez-Artalejo, M.: A Semantic Framework for Functional Logic Programming with Algebraic Polymorphic Types. In: Bidoit, M., Dauchet, M. (eds.) CAAP 1997, FASE 1997, and TAPSOFT 1997. LNCS, vol. 1214, pp. 453–464. Springer, Heidelberg (1997)
Baader, F., Nipkow, T.: Term Rewriting and All That. Cambridge University Press, Cambridge (1998)
Caballero-Roldán, R., López-Fraguas, F.J., Sánchez-Hernández, J.: User’s Manual for TOY, Technical Report SIP 57/97, Dpto. de Sistemas Inform áticos y Programación, Univ. Complutense de Madrid. System, available at http://mozart.sip.ucm.es/incoming/toy.html
Chen, W., Kifer, M., Warren, D.S.: HiLog: A Foundation for Higher-Order Logic Programming. Journal of Logic Programming 15, 187–230 (1993)
Goguen, J.A., Meseguer, J.: Models and Equality for Logical Programming. In: Ehrig, H., Levi, G., Montanari, U. (eds.) CAAP 1987 and TAPSOFT 1987, vol. 250, pp. 1–22. Springer, Heidelberg (1987)
Goldfarb, W.: The Undecidability of the Second-Order Unification Problem. Theoretical Computer Science 13, 225–230 (1981)
González-Moreno, J.C., Hortalá-González, M.T., Rodríguez-Artalejo, M.: A Higher Order Rewriting Logic for Functional Logic Programming. In: Proc. Int. Conf. on Logic Programming, Leuven, pp. 153–167. The MIT Press, Cambridge (1997)
González-Moreno, J.C., Hortalá-González, M.T., López-Fraguas, F.J., Rodríguez-Artalejo, M.: An Approach to Declarative Programming Based on a Rewriting Logic. Journal of Logic Programming 40(1), 47–87 (1999)
Hanus, M.: Polymorphic Higher-Order Programming in Prolog. In: Hanus, M. (ed.) Proc. Int. Conf. on Logic Programming (ICLP 1989), pp. 382–397. The MIT Press, Cambridge (1989)
Hanus, M.: A Functional and Logic Language with Polymorphic Types. In: Miola, A. (ed.) DISCO 1990. LNCS, vol. 429, pp. 215–224. Springer, Heidelberg (1990)
Hanus, M. (ed.): Curry: an Integrated Functional Logic Language (1998), available at http://www-i2.informatik.rwth-aachen.de/hanus/curry
Jaffar, J., Lassez, J.L., Maher, M.J.: A Theory of Complete Logic Programs with Equality. Journal of Logic Programming 1, 211–223 (1984)
Milner, R.: A Theory of Type Polymorphism in Programming. Journal of Computer and Systems Sciences 17, 348–375 (1978)
Mycroft, A., O’Keefe, R.A.: A Polymorphic Type System for Prolog. Artificial Intelligence 23, 295–307 (1984)
Nadathur, G., Pfenning, P.: The Type System of a Higher-Order Logic Programming Language. In: Pfenning, F. (ed.) Types in Logic Programming, pp. 45–283. The MIT Press, Cambridge (1992)
Peterson, J., Hammond, K. (eds.): Report on the Programming Language Haskell, A Non-strict, Purely Functional Language, Version 1.4, April 7 (1997)
Pfenning, F. (ed.): Types in Logic Programming. The MIT Press, Cambridge (1992)
Prehofer, C.: Solving Higher Order Equations: From Logic to Programming. Birkhäuser, Basel (1998)
Scott, D.S.: Domains for Denotational Semantics. In: Nielsen, M., Schmidt, E.M. (eds.) ICALP 1982. LNCS, vol. 140, pp. 577–613. Springer, Heidelberg (1982)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
González-Moreno, J.C., Hortalá-González, M.T., Rodríguez-Artalejo, M. (1999). Semantics and Types in Functional Logic Programming. In: Middeldorp, A., Sato, T. (eds) Functional and Logic Programming. FLOPS 1999. Lecture Notes in Computer Science, vol 1722. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10705424_1
Download citation
DOI: https://doi.org/10.1007/10705424_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66677-6
Online ISBN: 978-3-540-47950-5
eBook Packages: Springer Book Archive