High-level database programming in curry

被引:0
|
作者
Brassel, Bernd [1 ]
Hanus, Michael [1 ]
Mueller, Marion [1 ]
机构
[1] CAU Kiel, Inst Informat, Kiel, Germany
关键词
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper presents an environment to support high-level database programming in the multi-paradigm declarative programming language Curry. We define an application programming interface (API) that abstracts from the concrete database access methods. The API supports transactions and exploits Curry's type system to ensure a strict separation between queries and updates. In order to ensure database updates that are safe w.r.t. an intended data model (e.g., containing specific relations between entities), we assume a description of the data dependencies in the entity-relationship (ER) model from which all access and update operations related to the database are generated. We propose a representation of ER diagrams in the declarative language Curry so that they can be constructed by various tools and then translated into this representation. Furthermore, we have implemented a compiler from this representation into a Curry program that provides safe access and update operations based on the API for database programming.
引用
收藏
页码:316 / 332
页数:17
相关论文
共 50 条
  • [1] RELATIONAL DATABASE AND ITS USE IN HIGH-LEVEL APPLICATIONS PROGRAMMING
    STOREY, RA
    [J]. JOURNAL OF THE OPERATIONAL RESEARCH SOCIETY, 1980, 31 (01) : 108 - 108
  • [2] On a High-Level Approach to Implementing Exact Real Arithmetic in the Functional Logic Programming Language Curry
    Beierle, Christoph
    Lelitko, Udo
    [J]. DECLARATIVE PROGRAMMING AND KNOWLEDGE MANAGEMENT, 2014, 8439 : 48 - 64
  • [3] HIGH-LEVEL PROGRAMMING FEATURES FOR IMPROVING THE EFFICIENCY OF A RELATIONAL DATABASE SYSTEM
    VANDERIET, RP
    WASSERMAN, AI
    KERSTEN, ML
    DEJONGE, W
    [J]. ACM TRANSACTIONS ON DATABASE SYSTEMS, 1981, 6 (03): : 464 - 485
  • [4] High-level programming in MPI
    Gropp, WD
    Lusk, E
    [J]. RECENT ADVANCES IN PARALLEL VIRTUAL MACHINE AND MESSAGE PASSING INTERFACE, 2003, 2840 : 27 - 27
  • [5] High-Level Logic Programming
    Osorio, M
    Zacarias, F
    [J]. FOUNDATIONS OF INFORMATION AND KNOWLEDGE SYSTEMS, 2000, 1762 : 226 - 240
  • [6] HIGH-LEVEL PROGRAMMING LANGUAGES
    BARNETT, GO
    GREENES, RA
    [J]. COMPUTERS AND BIOMEDICAL RESEARCH, 1970, 3 (05): : 488 - &
  • [7] Programming the Web with high-level programming languages
    Graunke, P
    Krishnamurthi, S
    Van der Hoeven, S
    Felleisen, M
    [J]. PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2001, 2028 : 122 - 136
  • [8] A HIGH-LEVEL APPROACH TO PROGRAMMING A ROBOT
    WANG, NS
    DAVIES, BJ
    [J]. INTERNATIONAL JOURNAL OF MACHINE TOOLS & MANUFACTURE, 1987, 27 (01): : 57 - 63
  • [9] HIGH-LEVEL PROGRAMMING FOR DISTRIBUTED COMPUTING
    FELDMAN, JA
    [J]. COMMUNICATIONS OF THE ACM, 1979, 22 (06) : 353 - 368
  • [10] hiCUDA: High-Level GPGPU Programming
    Han, Tianyi David
    Abdelrahman, Tarek S.
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2011, 22 (01) : 78 - 90