TOY: A Multiparadigm Declarative System

  • F. J. López Fraguas
  • J. Sánchez Hernández
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1631)


TOY is the concrete implementation of CRWL, a wide theoretical framework for declarative programming whose basis is a constructor based rewriting logic with lazy non-deterministic functions as the core notion. Other aspects of CRWL supported by TOY are: polymorphic types; HO features; equality and disequality constraints over terms and linear constraints over real numbers; goal solving by needed narrowing combined with constraint solving. The implementation is based on a compilation of TOY programs into Prolog.


Linear Constraint Logic Programming Partial Evaluator Functional Logic Declarative Programming 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. AEH94.
    S. Antoy, R. Echahed, M. Hanus. A needed narrowing strategy. Proc. POPL’94, 268–279, 1994.Google Scholar
  2. AHL+96.
    P. Arenas, T. Hortalá, F.J. López, E. Ullán. Real constraints within a au]functional logic language. Proc. APPIA-GULP-PRODE’96, 451–462, 1996.Google Scholar
  3. ALR98a.
    P. Arenas, F.J. López, M. Rodríguez. Embedding multiset constraints into a lazy functional logic language. Proc. PLILP’98, Springer LNCS 1490, 429–444, 1998.Google Scholar
  4. ALR98b.
    P. Arenas, F.J. López, M. Rodríguez. Functional plus logic programming with built-in and symbolic constraints, 1998. Submitted.Google Scholar
  5. AR97a.
    P. Arenas, M. Rodríguez. A semantic framework for functional logic programming with algebraic polymorphic types. Proc.TAPSOFT’97, Springer LNCS 1214, 453–464, 1997.Google Scholar
  6. AR97b.
    P. Arenas, M. Rodríguez. A lazy narrowing calculus for functional logic programming with algebraic polymorphic types. Proc. ILPS’97,MIT Press, 53–69, 1997.Google Scholar
  7. CL98a.
    R. Caballero, F.J. López. A functional logic alternative to monads. Proc. of Workshop on Component-Based Software Development in Computer Logic, 87–100, 1998.Google Scholar
  8. CL98b.
    R. Caballero, F.J. López. Parsing with non-deterministic functions. Proc. APPIA-GULP-PRODE’98, 1–16, 1998.Google Scholar
  9. GHL+98.
    J.C. González, T. Hortala, F.J. López, M. Rodríguez. An approach to declarative programming based on a rewriting logic. To appear in JLP, 1998. Earlier version in ESOP’96.Google Scholar
  10. GHR97.
    J.C. González, M.T. Hortalá, M. Rodríguez. A higher order rewriting logic for functional logic programming. ICLP’97, MIT Press, 153–167, 1997.Google Scholar
  11. Han94.
    M. Hanus. The integration of functions into logic programming, JLP, 19 & 20, 583–628, 1994.MathSciNetCrossRefGoogle Scholar
  12. Han97.
    M. Hanus. A unified computation model for functional and logic programming, Proc. POPL’97, 80–93, 1997.Google Scholar
  13. Han98.
    M. Hanus (ed.). Curry: An integrated functional logic language. Available at, 1998.
  14. LS98.
    F.J.a López, J. Sánchez. An efficient narrowing strategy by means of disequality constraints. Tech. Rep. 98/84, Dep. SIP, UCM Madrid, 1998.Google Scholar
  15. LLR93.
    R. Loogen, F.J. López, M. Rodríguez. A demand driven computation strategy for lazy narrowing. Proc. PLILP’3, Springer LNCS 714, 184–200, 1993.Google Scholar
  16. MR92.
    J.J. Moreno, M. Rodríguez. Logic programming with functions and predicates: The language BABEL. JLP, 12, 191–223, 1992.zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • F. J. López Fraguas
    • 1
  • J. Sánchez Hernández
    • 1
  1. 1.Dep. Sistemas Informáticos y ProgramaciónUniv. Complutense de Madrid Fac. MatemáticasMadrid

Personalised recommendations