Liberal Typing for Functional Logic Programs

被引:0
|
作者
Lopez-Fraguas, Francisco [1 ]
Martin-Martin, Enrique [1 ]
Rodriguez-Hortala, Juan [1 ]
机构
[1] Univ Complutense Madrid, Dept Sistemas Informat & Computac, E-28040 Madrid, Spain
来源
关键词
Type systems; functional logic programming; generic functions; type-indexed functions; existential types; higher-order patterns; SYSTEMS;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We propose a new type system for functional logic programming which is more liberal than the classical Damas-Milner usually adopted, but it is also restrictive enough to ensure type soundness. Starting from Damas-Milner typing of expressions we propose a new notion of well-typed program that adds support for type-indexed functions, existential types, opaque higher-order patterns and generic functions-as shown by an extensive collection of examples that illustrate the possibilities of our proposal. In the negative side, the types of functions must be declared, and therefore types are checked but not inferred. Another consequence is that parametricity is lost, although the impact of this flaw is limited as "free theorems" were already compromised in functional logic programming because of non-determinism.
引用
收藏
页码:80 / 96
页数:17
相关论文
共 50 条
  • [31] An automatic composition algorithm for functional logic programs
    Alpuente, M
    Falaschi, M
    Moreno, G
    Vidal, G
    [J]. SOFSEM 2000: THEORY AND PRACTICE OF INFORMATICS, 2000, 1963 : 289 - 297
  • [32] Separation Logic for Sequential Programs (Functional Pearl)
    Chargueraud, Arthur
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2020, 4 (ICFP):
  • [33] Improving functional logic programs by difference-lists
    Albert, E
    Ferri, C
    Steiner, F
    Vidal, G
    [J]. ADVANCES IN COMPUTING SCIENCE-ASIAN 2000, PROCEEDINGS, 2000, 1961 : 237 - 254
  • [34] Equivalence of Two Formal Semantics for Functional Logic Programs
    Lopez-Fraguas, F. J.
    Rodriguez-Hortala, J.
    Sanchez-Hernandez, J.
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 188 : 117 - 142
  • [35] Run-time profiling of functional logic programs
    Brassel, B
    Hanus, M
    Huch, F
    Silva, J
    Vidal, G
    [J]. LOGIC BASED PROGRAM SYNTHESIS AND TRANSFORMATION, 2005, 3573 : 182 - 197
  • [36] On the Generation of Functional Test Programs for the Cache Replacement Logic
    Perez H, W. J.
    Ravotto, D.
    Sanchez, E.
    Reorda, M. Sonza
    Tonda, A.
    [J]. 2009 ASIAN TEST SYMPOSIUM, PROCEEDINGS, 2009, : 418 - +
  • [37] A residualizing semantics for the partial evaluation of functional logic programs
    Albert, E
    Hanus, M
    Vidal, G
    [J]. INFORMATION PROCESSING LETTERS, 2003, 85 (01) : 19 - 25
  • [38] Specialization of functional logic programs based on needed narrowing
    Alpuente, M
    Lucas, S
    Vidal, G
    Hanus, M
    [J]. THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2005, 5 : 273 - 303
  • [39] A hoare logic for call-by-value functional programs
    Regis-Gianas, Yann
    Pottier, Francois
    [J]. MATHEMATICS OF PROGRAM CONSTRUCTION, PROCEEDINGS, 2008, 5133 : 305 - +
  • [40] Forward slicing of functional logic programs by partial evaluation
    Silva, Josep
    Vidal, German
    [J]. THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2007, 7 : 215 - 247