Polymorphic Types in Functional Logic Programming.
Juan Carlos González Moreno, Maria Teresa Hortalá-González, Mario Rodríguez-Artalejo · Journal of functional and logic programming · 2001
The rewriting logic CRWL has been proposed as a semantic frame- work 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. Semanti- cally, models must be extended to incorporate a type universe. Oper- ationally, 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”. A pre- liminary version of the paper, much shorter and including no proofs, was published as [20].