ELIOM: A Core ML Language for Tierless Web Programming

被引:8
|
作者
Radanne, Gabriel [1 ]
Vouillon, Jerome [2 ]
Balat, Vincent [2 ]
机构
[1] Univ Paris Diderot, Sorbonne Paris Cite, CNRS, IRIF UMR 8243, Paris, France
[2] Univ Paris Diderot, CNRS, IRIF UMR 8243, Sorbonne Paris Cite,BeSport, Paris, France
关键词
Web; Client-server; OCaml; ML; Eliom; Functional;
D O I
10.1007/978-3-319-47958-3_20
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
ELIOM is a dialect of OCAML for Web programming in which server and client pieces of code can be mixed in the same file using syntactic annotations. This allows to build a whole application as a single distributed program, in which it is possible to define in a composable way reusable widgets with both server and client behaviors. Our language also enables simple and type-safe communication. ELIOM matches the specificities of the Web by allowing the programmer to interleave client and server code while maintaining efficient one-way server-to-client communication. The ELIOM language is both sufficiently small to be implemented on top of an existing language and sufficiently powerful to allow expressing many idioms of Web programming. In this paper, we present a formalization of the core language of ELIOM. We provide a type system, the execution model and a compilation scheme.
引用
收藏
页码:377 / 397
页数:21
相关论文
共 50 条
  • [1] Tierless Web Programming in the Large
    Radanne, Gabriel
    Vouillon, Jerome
    [J]. COMPANION PROCEEDINGS OF THE WORLD WIDE WEB CONFERENCE 2018 (WWW 2018), 2018, : 681 - 689
  • [2] Tierless Programming in Java']JavaScript
    Philips, Laure
    De Meuter, Wolfgang
    De Roover, Coen
    [J]. 2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 2, 2015, : 831 - 832
  • [3] WebL - a programming language for the Web
    Kistler, T
    Marais, H
    [J]. COMPUTER NETWORKS AND ISDN SYSTEMS, 1998, 30 (1-7): : 259 - 270
  • [5] Making Standard ML a Practical Database Programming Language
    Ohori, Atsushi
    Ueno, Katsuhiro
    [J]. ICFP 11 - PROCEEDINGS OF THE 2011 ACM SIGPLAN: INTERNATIONAL CONFERENCE ON FUNCTIONAL PROGRAMMING, 2011, : 307 - 319
  • [6] Making Standard ML a Practical Database Programming Language
    Ohori, Atsushi
    Ueno, Katsuhiro
    [J]. ACM SIGPLAN NOTICES, 2011, 46 (09) : 307 - 319
  • [7] Building Blocks for a Web Programming Language
    Turto, Tuomas
    [J]. PROCEEDINGS OF THE 34TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS, 2008, : 310 - 317
  • [8] POLYMORPHIC TYPECHECKING FOR THE EXCEPTION MECHANISM IN ML CORE LANGUAGE
    江明德
    [J]. Science Bulletin, 1989, (21) : 1766 - 1768
  • [9] POLYMORPHIC TYPECHECKING FOR THE EXCEPTION MECHANISM IN ML CORE LANGUAGE
    JIANG, MD
    [J]. CHINESE SCIENCE BULLETIN, 1989, 34 (21): : 1766 - 1768
  • [10] Web Programming Language evaluation using LSP
    Debnath, N
    Peralta, M
    Salgado, C
    Funes, A
    Dasso, A
    Riesco, D
    Montejano, G
    Uzal, R
    [J]. COMPUTER APPLICATIONS IN INDUSTRY AND ENGINEERING, 2003, : 302 - 305